CF 964C Alternating Sum

给定两正整数 $a, b$ 。给定序列 $s_0, s_1, dots, s_n,s_i$ 等于 $1$ 或 $-1$,并且已知 $s$ 是周期为 $k$ 的序列并且 $kmid (n+1)$,输入只给出序列 $s$ 的前 $k$ 项。

Find out the non-negative remainder of division of $sumlimits_{i=0}^n s_i a{n-i}bi$ by $10^9+9$.

数据范围

$ 1le n, a, b le 10^9$
$ 1le k le 10^5$

分析

注意到 $10^9 + 9$ 是一个素数,令 $p = 10^9 + 9$ 。
问题可化为等比数列求和。公比为 $q = left(dfrac{b}{a} ight)^k$ 。要特别注意 $q = 1 pmod{p}$ 时等比数列的求和公式不再适用。

比赛时,我第一发提交没有注意到这个点。后来想到这个点,但只想到了 $a = b pmod{p}$ 的情况。其实这并不是使 $q = 1$ 的唯一情况,至少还有一种情况「$a = - b pmod {p}$ 且 $k$ 为偶数」也使得 $q = 1$ 。比赛时我没想到这种情况,到快结束时,把用公式求和换成折半求和才通过的。


$1-(frac{b}{a})^k $ 在模 $p$ 逆元不存在 $iff$ $1-(frac{b}{a})^k = 0 pmod{p}$ $iff$ $(frac{b}{a})^k = 1 pmod{p}$


这一段论证真是太蠢了,被自己给蠢哭了
下面仔细分析一下这个问题
令 $S = sumlimits_{i=0}^{k-1} s_i a{n-i}bi$ 。考虑 $q e 1pmod{p}$ 的情形。
求和公式为
[
frac{S(1-(frac{b}{a})^{n+1})} {1-(frac{b}{a})^k}
]

分母 $1-(frac{b}{a})^k$ 在模 $p$ 下的逆元一定存在吗?

答案是肯定的。假设分母在模 $p$ 下的逆元不存在,即 $pmid (a^k - bk)(ak)^{-1}iff pmid (a^k - b^k)$


总结

当意识等比数列求和公式有不适用的情况时,应当进一步问自己,「等比数列求和公式不适用的充要条件是什么?」然后就自然会想到「直接去判断 $left(dfrac{b}{a} ight)^k mod p$ 是否等于 $1$」 。

原文地址:https://www.cnblogs.com/Patt/p/8900921.html