等比数列求和技巧(公式+倍增)

公式

一般情况下用这个即可,当然模数是质数也可以直接套公式。\(q\) 为公比。

\[S_n=\frac{a_1\times(1-q^n)}{1-q}=\frac{a_1-a_nq}{1-q}=\frac{a_nq-a_1}{q-1} \]

倍增

如果模数不是质数,可以考虑倍增法解决,思路类似快速幂(递归版)。

\[\sum_{i=1}^{n}a_i= \left\{ \begin{aligned} &\sum_{i=1}^{\lfloor{n\over 2}\rfloor}a_i\times(1+q^{\lfloor{n\over 2}\rfloor}),&n=2k\\ &\sum_{i=1}^{\lfloor{n\over 2}\rfloor}a_i\times(1+q^{\lfloor{n\over 2}\rfloor})+a_1\times p^{n-1},&n=2k+1 \end{aligned} \right. \]

posted @ 2024-11-08 13:22  HarlemBlog  阅读(12)  评论(1编辑  收藏  举报