- やった回: ABC327
- 成績: ABCD4完 / 0ペナ(+未AC3ペナ) / 51:49(ペナ込み)
- パフォーマンス: 1014
ABCはほぼ1ヶ月ぶりの参加。とりあえずDまではきっちり出来たし、パフォーマンスもそれなりに良かったので安心しました。
ご覧のとおり十分な考察時間を取れたはずのE問題は色々悩んでコンテスト中に貪欲っぽいのを3通り出して分かっちゃいたけど全部ダメ、終了直後に少しずつ範囲を狭めていってmaxを取るのもやってみてダメで解説を読んだらDPでしたの巻。
言い訳をしておくとNの制約から薄々DPの気配はしてたんだけどbitDPはデータ量で無理そうだし、何をiとjに取ればいいのか解説を読むまで全く分からず。何なら解説もまだ目が滑って読めない(多分眼精疲労と数式のせい)。さてはナップサックDPが不慣れですね?
A問題: ABC327-A ab
素朴にab
とba
の位置を探しました。
これもっと端的に書けそうと思って他の人の提出を見せてもらったら、正規表現のマッチを使って s =~ /ab|ba/
で評価してる人が多かったかな。
B問題: ABC327-B AA
素因数分解してごにょごにょしようかなと思ったんだけど、雑に考えてもaの最大値100もいかないでしょ*1ってことで素直に1からループぶん回して一致したらその時のaの値を返すようにしました。
C問題: ABC327-C Number Place
データサイズ的にいけると思ったので、素朴に全部の条件を確認しました!(雑)
D問題: ABC327-D Good Tuple Problem
つまりどういうことだってばよって思いながら問題を読みながら図を描いていたら、AとBの値をノードの番号として扱い、A_i
とB_i
を繋げていって出来たグラフを全部2色に塗り分けることが出来たら問題文の条件を満たすんじゃねっていうことに気付く。そういえばコンテストですごい苦労した類題あったなと思ったらこっちもHHKBコンのD問題でした。upsolve丁寧にやっておいてよかったなぁ。
あとでEが解けたら追記します。今週も対ありでした!
*1:解説読んだら15が上限だった