题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2256

最重要的是构建递推式,下面的图是盗来的。貌似这种叫共轭数。

 #include <iostream>
#include <cstdio>
#include <cmath>
#include <cstring>
#include <algorithm>
using namespace std;
const int mod = ;
struct data {
int mat[][];
data() {}
data(int x, int y, int z1 = , int z2 = ) {
mat[][] = x, mat[][] = y;
mat[][] = z1, mat[][] = z2;
}
}; data operator* (data a, data b) {
data ans;
for(int i = ; i <= ; ++i) {
for(int j = ; j <= ; ++j) {
ans.mat[i][j] = ;
for(int k = ; k <= ; ++k)
ans.mat[i][j] = (ans.mat[i][j] + a.mat[i][k] * b.mat[k][j] % mod) % mod;
}
}
return ans;
} data operator^ (data a, int n) {
data ans;
for(int i = ; i <= ; ++i) {
for(int j = ; j <= ; ++j) {
ans.mat[i][j] = (i == j);
}
}
while(n) {
if(n & )
ans = ans * a;
a = a * a;
n >>= ;
}
return ans;
} int main()
{
int t, n;
scanf("%d", &t);
while(t--) {
scanf("%d", &n);
data ans(, );
data a(, , , );
a = a ^ (n - );
ans = ans * a;
printf("%d\n", (ans.mat[][] * - + mod) % mod);
}
return ;
}

最新文章

  1. [SQL入门级] 第一天 SQL初步
  2. yourphp点击刷新验证码
  3. 常用dos命令 如查询端口号是否被占用
  4. ORA-15028: ASM file &#39;..&#39; not dropped; currently being accessed --转载
  5. U3D 扩展方法 &amp; Dotween &amp; tolua
  6. DevOps到底是什么?
  7. java: Eclipse jsp tomcat 环境搭建(完整)
  8. Delphi 服务操作
  9. MAC OSX 10.10 下安装PHP环境
  10. 通讯服务类API调用的代码示例合集:短信服务、手机号归属地查询、电信基站查询等
  11. ssh整合之二hibernate单独搭建
  12. Android的BroadcastReceiver组件
  13. Mac在Finder中显示隐藏文件
  14. MySQL备份mydumper的原理【转】
  15. WebPage设计专业术语
  16. 基因组与Python --PyVCF 好用的vcf文件处理器
  17. 页面显示时间js
  18. 一个关于A标签和分页的怪问题!
  19. Python2.7-ConfigParser
  20. 12-[CSS]-margin塌陷,margin 0 auto,善用父级的padding

热门文章

  1. spring security的标签库
  2. python练习程序(c100经典例18)
  3. Myeclipse 安装Aptana3.2 插件
  4. Android系统在超级终端下必会的命令大全(adb shell命令大全)
  5. Java并发编程-可重入锁
  6. delphi 中 $是什么意思 串口中使用
  7. LoadRunner中常见参数和变量
  8. selenium中处理不带ID的弹出窗口
  9. jquery小技巧汇总 持续更新中
  10. CSS概述&lt;选择器总结&gt;