摘要: 原题传送:http://poj.org/problem?id=3233 两个二分:二分 k ,二分矩阵。 求Sn = A + A2 + A3 + … + Ak。 首先我们能矩阵二分快速幂计算出Ak,那么我们对S再进行二分: 当k % 2 != 0则计算Ak+S(k-1),当k % 2 == 0时计算S(k/2) * (Ak/2 + E),这样就可以在log(k)的时间里算出Sk。 ps:这题有两个地方要注意,否则可能会TLE 1. 用 unsigned int,不要 long long 2. 取模运算效率很低,矩阵乘法单个元素最大值不是很大的情况下先算出来再取一次模更好。Vi... 阅读全文
posted @ 2012-12-27 20:28 芒果布丁 阅读(193) 评论(0) 推荐(0) 编辑