矩阵快速幂求斐波那契数列第n项
来源:互联网 发布:知豆电动汽车官网 编辑:程序博客网 时间:2024/05/17 07:42
求斐波那契数列第 n 项
#include<cstdio>#include<iostream>#include<vector>using namespace std;typedef vector<int> vec;typedef vector<vec> mat;const int mod = 10000;mat mul(mat A, mat B){mat C(A.size(), vec(B[0].size()));for(int i= 0; i< A.size(); i++)for(int k= 0; k< B.size(); k++)for(int j= 0; j< B[0].size(); j++)C[i][j] = (C[i][j] + A[i][k] * B[k][j]) % mod;return C;}mat pow(mat A, int n){mat B(A.size(), vec(A.size()));for(int i= 0; i< A.size(); i++)B[i][i] = 1;while(n > 0){if(n & 1) B = mul(B, A);A = mul(A, A);n >>= 1;}return B;}int main(){int n;while(scanf("%d", &n) != EOF){mat A(2, vec(2));A[0][0] = A[0][1] = A[1][0] = 1;A[1][1] = 0;A = pow(A, n);printf("%d\n", A[1][0]);}return 0;}
阅读全文
0 0
- 矩阵快速幂求斐波那契数列第n项
- poj 3070 Fibonacci (矩阵快速幂求斐波那契数列的第n项)
- 矩阵快速模幂 + 求斐波那契数列第n项(Fibonacci)
- 51nod 1242 斐波那契数列的第N项(矩阵快速幂)
- 51nod 1242 斐波那契数列的第N项【矩阵快速幂】
- 51nod 1242 斐波那契数列的第N项 (矩阵快速幂)
- 【51Nod】1242 - 斐波那契数列的第N项(矩阵快速幂)
- 51nod 1242 斐波那契数列的第N项(矩阵快速幂)
- 51Nod-斐波那契数列的第N项(矩阵快速幂)
- 矩阵快速幂1242斐波那契数列的第N项
- 斐波那契数列的第N项 矩阵快速幂
- 1242 斐波那契数列的第N项(矩阵快速幂)
- 【51NOD1242】斐波那契数列的第N项(矩阵快速幂)
- 2017.3.25 矩阵快速幂 求斐波那契数列第n项
- [51NOD]-1242 斐波那契数列的第N项 [矩阵快速幂]
- 斐波那契数列的第N项(矩阵快速幂模板)
- 51 nod 1242 斐波那契数列的第N项 矩阵快速幂
- 51Nod 1242 斐波那契数列的第N项(矩阵快速幂)
- java 发送http协议的POST请求获取数据
- C++搜索与回溯算法之马拦过河卒
- 高通平台开发环境搭建、编译、烧录(android5.1以上系统)
- POJ2506 高精度+递推
- char表示的范围
- 矩阵快速幂求斐波那契数列第n项
- POJ3278 BFS
- VTK交互之交互样式
- VMware中Ubuntu16.04 设置1920*1080
- POJ2965 枚举
- python迭代器简介
- 如何取数据五 spring+servlet(request取数据,然后setget dao)+jdbc存数据库
- 2015-2016 ACM-ICPC Pacific Northwest Regional Contest Div.2( Problem V Gears)
- 【Java】-- 对象和对象引用