目標は達成した。フラグはへし折った。
— Toy (@mdstoy) 2019年4月6日
でも、結局3完なんですよねぇ・・・。
あと、
どうでもいいけど、今回から IntelliJ IDEA (Java) と VSCode (C++) の二刀流で挑む #AtCoder
— Toy (@mdstoy) 2019年4月6日
さすがにAとBはもうC++の方が速く書ける気がしている
ていうかもはやCLion欲しくなってきていて困る
結局全部C++でやりました。考え方が重要で、実装は簡素で済む問題ばかりでしたので。
各問題
A - Five Antennas
直接 通信ができないアンテナの組が存在するかどうか判定してください。
- できないものが一つでもあれば通信できないということ
- 最大の座標と最小の座標の距離だけ見ればいい
- それが通信できれば、他の組み合わせももちろん通信できる
- 全てそれ以下の距離しかないから
- 通信できなければ、一つ存在するので判定終了
- それが通信できれば、他の組み合わせももちろん通信できる
- 最大の座標と最小の座標の距離だけ見ればいい
A問題にしては頭を使わされたような気が・・・。
B - Five Dishes
正直に言いまして、最初順番関係ないんじゃないの?って思ってました。注文が完了したら終わりだと勘違いしていたので。 しかし、出力例2を見て勘違いしていたことと、正しい答え(一の位が小さいものを最後に選ぶ)がわかりました。そこはまったく自分で考えていません・・・。
まあコンテストではそういう解き方もときにはあるということで。
C - Five Transportations
これも、しばらく考えていたら突然答えが降ってきました。最大のボトルネックにのみ輸送量は影響されるんですね。 それさえわかれば簡単、なのですが、人数が輸送量で割り切れるときの処理を誤るという極めて初歩的なミスで1WAだしてしまいました。(TLEは出さなかったというのに・・・。)
D - Cake 123
うーん、正しく枝狩りする方法が思いつかなかったです。これから解説みて勉強します。
まとめ
とりあえず愚直に実装してみるのも重要と悟りました。そこから気づくこともあるはず・・・。