ゆるふわ競プロ

Javaでゆるゆる競プロしています.忘れっぽいのでメモ用,復習用

ABC056 C (考察)

atcoder.jp

考察できるかの問題でした。数学できる人には簡単かもしれない。

問題文に翻弄されてはいけない

問題文では時刻iの時に右にも行けるし左に戻ることもできると示されている。しかし実際問題左に行く必要がなかったのだ。
左に行くくらいなら何もせずにその場に止まっていれば良いのが解答となる。

   今まで経過した時間の和   >=   行きたい座標

これが成り立った時点でその時刻に行きたい座標に行けることが保証される。

     今まで経過した時間の和   <   行きたい座標

この時に成り立たないのはわかるだろう。ずっと右に行くを繰り返してもたどり着けていない状況だ。

   今まで経過した時間の和   >=   行きたい座標

逆にこの時はずっと右に行くとして行き過ぎてしまったら通り過ぎた分の時間の移動をなかったことにすることで,その分戻ると同じ操作をすることができる。
実装自体は非常に簡単な問題なので思いつくかの勝負になった。