ijpc-2 e問題解説

9
E 自自 MOD 自自自 @takayuta1999

Upload: yutaka1999

Post on 14-Apr-2017

353 views

Category:

Science


1 download

TRANSCRIPT

Page 1: IJPC-2 E問題解説

E 自動 MOD 取り機@takayuta1999

Page 2: IJPC-2 E問題解説

問題概要 以下のコマンドを処理してください 回目のコマンドの時、の中で、で割った余りが以上の値のものをすべて、 その数より大きい最小のの倍数に置き換える の値を出力する すべてにを加える

はじめ、 はすべて 0

Page 3: IJPC-2 E問題解説

考察 不思議なのは、コマンド 1 が任意の区間ではなくて、始点が決まっている区間に対してしか行われないこと なんか怪しいので別の見方をしてみよう

Page 4: IJPC-2 E問題解説

考察 回コマンドを行った時の各の値をとする そして、次の図を眺める …

Page 5: IJPC-2 E問題解説

考察 回コマンドを行った時の各の値をとする そして、次の図を眺める …

こっちから更新してみよう

Page 6: IJPC-2 E問題解説

考察 上のように見たときに、コマンドはどのように変化するかを考える すると次頁のような問題になる

Page 7: IJPC-2 E問題解説

考察 が与えられ、座標がの位置に秒間緑信号、秒間赤信号の信号を置くことを考える。 ただし、 の順番でこれらを設置していくので、あるところまで設置した際、時間 0 で 0 からスタート座標にたどり着くのはいつか毎秒 1 動くとき答えよ というクエリに答える問題になる

Page 8: IJPC-2 E問題解説

考察 この問題において、各信号の色が変わる回数というのを考える これは、して、初めて緑と赤が終わるので、回目の信号にたどり着く時間としてありうるのがから秒の間であることより、 であることを利用すると、この周期は高々 ) 回しか起こらず、 より、高々 10 回しか変わることがない

Page 9: IJPC-2 E問題解説

解法 よって、新しい信号機が変わるたびに、各信号がいつになったら状態が変わるかの値を segtree で管理することにより、各信号機にたどりつく時間を管理することができる これで、各クエリに対して、最も近い信号機からの距離を足してあげることで解くことができる ただし、この segtree はやや実装が重くバグりやすい 計算量