Toy と帽子と ADP BE

主にプログラミングに関わる話をゆるくエモくやっていきます

日立ヴァンタラプログラミングコンテスト2024(AtCoder Beginner Contest 368)

ABCDFの5完

各問題

A - Cut

N-K+1番目のカードからN番目までを出力、1番目からN-K番目までを出力、とすればよいです。

B - Decrease 2 max elements

いわれた操作を愚直にやっていけばよいです。

C - Triple Attack

こちらは愚直にやると間に合いません。

3の倍数で行動がひとループするため3回の行動で敵の体力が5減ると考えることができます。よって敵の体力を5で割ってそれに3をかけた回数行動したとき、敵の体力を5で割った余りが残り体力とみなすことができます。これでO(N)となります。

D - Minimum Steiner Tree

Vに含まれる任意の頂点からDFSをして、帰りがけに自分を含めた子供の頂点がVに含まれているならそれは削除できない、含まれていないならそこは切り捨ててよい、とできます。

E - Train Delay

愚直にやる方法にもたどり着けませんでした...。「遅らせても」の解釈がうまくできてなかった。

F - Dividing Game

D まで通して順位表を見て、すべてを察しました。(以下省略

まとめ

よくありそうな Nim の問題だとはいえ、いくらなんでも早い段階で通されすぎでしょうよ...。ていうか生成AIさん、この程度のNimなら瞬殺するんですね。