解法1:
考え方
(解放のみメモ)N〜1の橋を封鎖したときのツアーの長さを基準にして,順番に隣の橋を封鎖した場合を差分で計算する.
$a < b$とすると,$a\rightarrow b$というルートは,$a$〜$(a+1)$の橋が封鎖された時から$(b-1)$〜$b$の橋が閉鎖されたときまで,N〜1の橋を封鎖したときとは逆回りに通らなければならない.さらに,$b$〜$(b+1)$の橋が封鎖されて以降は元に戻る.
これに気づくとimos法が使える.
アライグマ「D問題は、1とNを結ぶ橋を封鎖したときを基準にすると、「どの橋を封鎖するとX[i]からX[i+1]に行くときに何手変わるか」がわかるから、その合計をimos法で計算するのだ!」 pic.twitter.com/CVzh5yNjRH
— 競技プログラミングをするフレンズ (@kyopro_friends) January 27, 2024