AtCoder で Rating 緑 を Python3 で目指している現在灰色です。
192 では A ~ C 問題までは解けたのですが、D問題につまづいてしまい
解答することができなかったのでどうすればよかったかを纏めます
どこで解けなかったか
1回目の解答
計算量を無視して一先ず解答が合うコードを書いた結果TLEを起こした
2回目以降の解答
Python での int 型で n進数を指定してしてみたが、36進数以下までしか対応していないことに気がつかなかった
int(“100”, 37)
やるとエラーを起こす
対策
計算量がわからなかった場合
AtCoderでの解説動画で最初に計算量を算出してから、
コードを書くようにする、もし計算量がなんとなくでもわからない場合は
その問題を飛ばして次の問題を確認する
ABC 192 では E 問題のほうが難易度が低いこともあるので
計算量がなんとなくでもいいから算出できそうな問題を解くようにする
n進数変換でエラーを出していた
Int型 の第2パラメータに数値を入れるとその進数になるのだが、 上限があり 36進数までだったことに気がつかなかった
焦らずちゃんとドキュメントを読み、出来ること出来ないことを確認する
2分探索の過去問を解く
過去問より、どんなケースだと2分探索が必要になるのか解説しているページから、解説をみずに時間(2時間以内)をかけてもいいので解けるまで挑戦する。
時間内に解けなかったら解説を見て、他の2分探索の過去問に挑戦する
まとめ
何故解説動画では、最初に計算量を算出するのかの理由がわかり 前よりかは解けている気がしています(まだまだ足りませんが)
コンテスト中2度ぐらい解答に失敗するとものすごく焦ってしまい思考が停止してしまうので、
ブレイクできる何かがほしいと最近思っています。
今の目標は 3月中に Rating 緑 を取りたいので
高校数学の勉強と過去問を解くのに時間をあてています