? 题目链接:http://poj.org/problem?id=3070 ?

  这题就是让求斐波那契数列的第n项,但是题目中n很大,所以打表和直接求都会TLE,对于这个题我们可以用矩阵快速幂,下面一张图片详细解释过程:

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define mod 10000
using namespace std;typedef long long LL;
const int Max_n=100005;struct Mat{int mat[2][2];
};Mat mul(Mat a,Mat b){Mat ans;for(int i=0;i<2;i++){for(int j=0;j<2;j++){ans.mat[i][j]=0;for(int k=0;k<2;k++)ans.mat[i][j]+=(a.mat[i][k]*b.mat[k][j])%mod;ans.mat[i][j]%=mod;}}return ans;
}Mat q_pow(Mat a,int b){Mat ans={1,0,0,1};Mat res=a;while(b){if(b&1) ans=mul(ans,res);res=mul(res,res);b>>=1;}return ans;
}
int main(){int n;while(~scanf("%d",&n)&&n!=-1){Mat a={1,1,1,0};Mat ans={0,0,0,0};ans=q_pow(a,n); printf("%d\n",ans.mat[0][1]);}return 0;
}

转载于:https://www.cnblogs.com/zut-syp/p/10548098.html

POJ 3070 Fibonacci(矩阵快速幂入门、模板)相关推荐

  1. H - Fibonacci POJ - 3070 (矩阵快速幂)

    H - Fibonacci POJ - 3070 (矩阵快速幂) Description In the Fibonacci integer sequence, F0 = 0, F1 = 1, and ...

  2. 又见斐波那契~矩阵快速幂入门题

    链接:https://www.nowcoder.com/acm/contest/105/G 来源:牛客网 题目描述 这是一个加强版的斐波那契数列. 给定递推式 求F(n)的值,由于这个值可能太大,请对 ...

  3. 【洛谷P3390】 矩阵快速幂(模板)

    贴一下矩阵快速幂的模板 #include<iostream> #include<cstdio> #include<cstring> #include<stri ...

  4. poj3070 Fibonacci 矩阵快速幂

    Fibonacci Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 18084   Accepted: 12572 Descr ...

  5. HDU 3306 Another kind of Fibonacci 矩阵快速幂

    题目链接 因为S(N) , S(N) = A(0)^2 +A(1)^2+--+A(n)^2.所以构造的矩阵一定要维护A(n)^2 s[n-1]=s[n-2]+A[n-1]^2 A[n]=x*A[n-1 ...

  6. E. Product Oriented Recurrence (矩阵快速幂新模板)

    E. Product Oriented Recurrence time limit per test 1 second memory limit per test 256 megabytes inpu ...

  7. POJ3070 Fibonacci【矩阵快速幂】

    Fibonacci Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 20098 Accepted: 13850 Descripti ...

  8. 2017网易笔试矩阵快速幂

    昨天网易笔试,竟然除了矩阵快速幂的题目,日了狗了,离开acm好久了,忘得差不多了,囫囵吞枣补一下吧,哎,太菜了! 题目如下 小易拥有一个拥有魔力的手环上面有n个数字(构成一个环),当这个魔力手环每次使 ...

  9. hdu 2842 Chinese Rings 矩阵快速幂

    分析: 后面的环能不能取下来与前面的环有关,前面的环不被后面的环所影响.所以先取最后面的环 设状态F(n)表示n个环全部取下来的最少步数 先取第n个环,就得使1~n-2个环属于被取下来的状态,第n-1 ...

最新文章

  1. 计算机禁用了网络怎么qtyong,如何禁用Qpushqt按钮?
  2. Java中文编码小结
  3. 转 linux常用查看硬件设备信息命令
  4. php多线程安装pthreads步骤详解
  5. 编译器vs.代码 谁之过
  6. ios 通过kvc修改属性会触发kvo_iOS开发-KVC和KVO的理解
  7. linux:tr的用法
  8. 小熊派开发实践丨小熊派+合宙Cat.1接入云服务器
  9. wordpress好用的插件-wordpress插件自动采集伪原创发布插件免费
  10. ubuntu装指定分区_安装Ubuntu16.04系统步骤详细加分区
  11. 中国正式发放5G牌照,预计中国移动推进最快
  12. python 提取字幕_使用 Python 提取字幕文件
  13. 淘宝客怎么跟踪订单?
  14. java里arcsin_java编程用泰勒级数计算arcsin
  15. jquery仿直播app按钮点赞特效
  16. 两台计算机互联方案,如何让两台电脑直接用网线互联.docx
  17. python输出奇数数字序列_python在一串数字中选出奇数-女性时尚流行美容健康娱乐mv-ida网...
  18. HBase中RegionServer宕机恢复介绍
  19. 2021华为鸿蒙,2021华为鸿蒙系统什么时候上线 2021华为鸿蒙系统上线时间
  20. 电子火折子的电路原理

热门文章

  1. postman参数化 接口响应数据获取符合条件的内容参数化给后面的接口使用
  2. 内部类--毕向东Java基础教程学习笔记
  3. android之音乐播放和音效播放
  4. Hbase写入量大导致region过大无法split问题
  5. 使用 $.grep() 方法
  6. C语言-main方法的两个参数是干什么的?
  7. Golang之单元测试
  8. 反编译android的apk
  9. 联机重做日志的配置过程
  10. 扩展CXF, 支持LoadBalance负载均衡