mini notes

競技プログラミングの解法メモを残していきます。

yukicoder No.995 タピオカオイシクナーレ(★2.5)

問題:No.995 タピオカオイシクナーレ - yukicoder

解答:#472646 (C++14) No.995 タピオカオイシクナーレ - yukicoder

解法:
Xi:i回目のパワー後にミルクティーにいる確率、Yi:i回目のパワー後にキッチンにいる確率とすると
Xi+1 = Xi * (1 - p/q) + Yi * p/q
Yi+1 = Xi * p/q + Yi * (1 - p/q)
である。これを推移行列で表示し、行列累乗でXk, Ykを十分高速に求めることができる。