AtCoder Beginner Contest 090
A - Diagonal String
s1.substring(0,1) + s2.substring(1,2) + s3.substring(2,3)
追記:s1.charAt(0) + s2.charAt(1) + s3.charAt(2) のほうがたぶん速い(コードを書くにしても動かすにしても)。
B - Palindromic Numbers
A以上B以下の値をすべて、このブログのメソッド(文字列)内にある回文判定メソッドで処理してカウントした。
C - Flip,Flip, and Flip......
俺はいったい何をしているんだ。この問題で87分も溶かしてしまった。しかもACできなかった。絶対に下がらないだろうと思っていたレートも下がってしまった。
場合分けをすれば簡単に解ける。
・nかm、どちらかが1の場合 → 1でないほうから2を引いたものが答え
・nかm、どちらかが2の場合 → 0
・それ以外 → (n-2)*(m-2)
僕は1の場合と2の場合を一緒にして考えてしまっていた。まさか2の場合は全部0だなんて思いもしなかった……いま振り返ってみればなんとあっけない問題だろう。前回のC問題より全然簡単じゃあないか。それぞれちゃんと紙に描くか、二次元配列を使って念入りにシミュレーションしてから回答すればよかった。下手に提出してWAが続くと、ただでさえのぼせやすい頭がさらに空回りしてしまうので、WAしてしまったときは、もうこれ以上考えられないくらい熟考して、可能性のある全ての値についてシミュレーションするべきだ。
D - Remainder Reminder
そのうち解く
まとめ
競プロのモチベーションはC問題への復讐心から多少上がった