解説
各項を最初から順番に見ていくと、
x0x1x2x3=c=ac+b=a(ac+b)+b=a2c+(a+1)b=a(a2c+(a+1)b)+b=a3c+(a2+a+1)b⋮
となり、ここから xn=anc+(an−1+an−2+⋯+a+1)b となることがわかります。
等比数列の公式を使うと、 xn=anc+a−1an−1b となるため、 O(logn) で計算することができます。
ただし、 a=1,998244354 のときは、 b の係数の分母が 0 になってしまうため、注意が必要です。
このような場合、 a はないものとして考えると、 xn=c+bn という式を得ます。