我说有些数学测试不要太地狱

手算矩阵快速幂都来了。

原题

数列 \(u_n\) 满足:

\[u_1=2,u_2=5,u_{n+1}=\left\{\begin{matrix} 2u_n-u_{n-1}, & 2\nmid n\\ 3u_n-u_{n-1}, & 2\mid n \end{matrix}\right.\]

\(u_{2050} \bmod 100\)

官解给的是算二阶递推矩阵然后手算矩阵快速幂。不过稍微有点良心的是它给你设好了 1024 次方,只用算 10 次,为数不多的良心了。

说回正题。这题的另一个计算量小一点的方法是,设 \(a_n=u_{2n-1},b_n=u_{2n}\),用二阶齐次递推你会得到 \(b_{n+1}=4b_{n}-b_{n-1}\)。使用 \(100=4\times 25\),对着\(\bmod 4\)\(\bmod 25\) 分别算,你会发现\(\bmod 4\) 非常好算,而\(\bmod 25\) 下是以 15 为周期的,最终得到答案 \(1\)。这不比手算矩阵快速幂强。

当然如果想要在不知道周期性的情况下保证稳定做出这个题,那还是算矩阵快速幂去吧(它甚至都不把\(\bmod 4\) 拆出来)

posted @ 2026-06-22 19:18  Xuan_tmp  阅读(8)  评论(0)    收藏  举报