0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

At Coder ABC 192 コンテストを受けてD問題で解けなかった話

Last updated at Posted at 2021-03-02

AtCoder で Rating 緑 を Python3 で目指している現在灰色です。

192 では A ~ C 問題までは解けたのですが、D問題につまづいてしまい
解答することができなかったのでどうすればよかったかを纏めます

どこで解けなかったか

D問題

1回目の解答

計算量を無視して一先ず解答が合うコードを書いた結果TLEを起こした

2回目以降の解答

Python での int 型で n進数を指定してしてみたが、36進数以下までしか対応していないことに気がつかなかった

int(“100”, 37)

やるとエラーを起こす

対策

計算量がわからなかった場合


AtCoderでの解説動画で最初に計算量を算出してから、
コードを書くようにする、もし計算量がなんとなくでもわからない場合は
その問題を飛ばして次の問題を確認する

ABC 192 では E 問題のほうが難易度が低いこともあるので
計算量がなんとなくでもいいから算出できそうな問題を解くようにする

n進数変換でエラーを出していた

Int型 の第2パラメータに数値を入れるとその進数になるのだが、
上限があり 36進数までだったことに気がつかなかった

焦らずちゃんとドキュメントを読み、出来ること出来ないことを確認する

Python int についてのドキュメント

2分探索の過去問を解く

過去問より、どんなケースだと2分探索が必要になるのか解説しているページから、解説をみずに時間(2時間以内)をかけてもいいので解けるまで挑戦する。

時間内に解けなかったら解説を見て、他の2分探索の過去問に挑戦する

まとめ

何故解説動画では、最初に計算量を算出するのかの理由がわかり
前よりかは解けている気がしています(まだまだ足りませんが)

コンテスト中2度ぐらい解答に失敗するとものすごく焦ってしまい思考が停止してしまうので、
ブレイクできる何かがほしいと最近思っています。

今の目標は 3月中に Rating 緑 を取りたいので
高校数学の勉強と過去問を解くのに時間をあてています

0
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?