WTF22-DAY1-OPEN

1完。unratedなのは悲しいけど仕方ない。参加させてくれてありがとう。

A - Save the Monsters

他の問題もだけど、すっごくフレンドリーな見た目。ABCのEやARCのBにありそうな簡単めの問題に見える。でも難しいので、やべーやべー言ってた。なんか誤読してたけど、攻撃を見てから防御するかどうか決められるのね。どっちにしろ(?)、先手と後手に分かれてやるゲームとみなせる。サンプル2がけっこうやばくて、攻撃がなければ1体守れるし、攻撃があればそれをスルーすることで後半守り切れる。勇者の立場で何体倒せるか考えてもいいので色々考えていると、攻撃機会の少ない順に守るだけでよさそうだと気づく。確認してみると、相手の出方によらずそれだけは守れそうだし、勇者の立場でもそこまでは倒せそうなので提出。長時間考えて疲れていたのでぼんやり確認しただけ。ratedだったら確認をもう少し短く切り上げて提出していたと思う(順位表でペナが少なかった)。

B - Non-Overlapping Swaps

難しい。下手の考え休むに似たりという言葉が思い浮かぶ。あんだけ時間あって何やってたんだろう。手で色々試していたが、暇になってきたので愚直を書いてN=5やN=6で解を出力させてみた。思ったより傾向がつかめない。3 4 5 2 1 という例で、最初に3と5を入れ替えると次に5と1を入れ替えられないが、まず1と5を入れ替えればいい。そして、その一連の操作に2と4の入れ替えが混ざれないと思ったが、そこはいっぺんに2つ揃うので1回休めば大丈夫だった。残り1時間を切って気づいたんだけど、サイクルに分解して考えればいい。1個のサイクルは、問題文に書かれているように(サイクルの長さ-1)回でできるし、1回休めば干渉しない。しかし、そこからびっくりするくらい進まなかった。Twitterでは、2 4 1 3 という例が出ていた。どうやって気づくんだよ。

C以降も一応読んだが、どれもシンプルな問題ですごい。この見た目で、簡単に解けるのでもなく、解けないわけでもないの、何??身近にそういうものが存在してるって教えてもらえるのは嬉しいけどね。