こんにちは。昨日のABC301で入緑しました!
コンテストでは3ペナ4完でパフォーマンスは1333、レートが785→857となりました。入茶したのが今年の1月7日、それから4カ月です。いろいろなアルゴリズムを勉強しましたが、特にコンテスト中に使ったと思ったのはUnion FindとBFS、DFS、素数列挙、DP、RLE圧縮です。
A問題
問題を読み取るのに時間がかかったと思います。最初にTとAの個数を数えて、どちらかが多い場合はそれを出力しました。個数が同じ場合は、先にその個数にたどり着いた方が勝ちなので、for文で計算しました。
02:31
B問題
隣接する要素が大きいか小さいかで、rangeを使って足していきました。反例があると思いましたが、ACになりました。
04:24
C問題
C++で解きました。mapを使って文字の種類を数え、a~zまで調べて、@で変えられるのはa,t,c,o,d,e,rだけなのでそれ以外の文字で個数が一致しない場合はNoです。a,t,c,o,d,e,rに入っている場合でも、@の個数が足りなくなるとだめなのでその場合もNoにしました。反例があると思いましたがACになりました。
16:56
D問題
変えると変化が大きい上の桁から決めていきました。?になっている場所を管理して、採用するかしないかを決めて最終的な答えがNより小さいかどうかで決めました。
4ペナ30:24