poj 3070 Fibonacci 矩阵快速幂
来源:互联网 发布:知有儿童挑促织 编辑:程序博客网 时间:2024/06/05 12:42
#include <cstdio>#include <cstring>using namespace std;#define M_H 2#define M_L 2typedef struct ma{ int h, l; int a[M_H][M_L];}ma;ma need, anser;void init(){ need.h=2; need.l=2; anser.h=2; anser.l=2; need.a[0][0]=1; anser.a[0][0]=1; need.a[0][1]=1; anser.a[0][1]=0; need.a[1][0]=1; anser.a[1][0]=0; need.a[1][1]=0; anser.a[1][1]=1;}ma multi(ma a, ma b){ ma c; c.h=a.h; c.l=b.l; for(int i=0; i<c.h; i++) for(int j=0; j<c.l; j++) c.a[i][j]=0; for(int i=0; i<c.h; i++){ for(int j=0; j<c.l; j++){ int ans=0; for(int k=0; k<a.h; k++){ ans += (a.a[i][k] * b.a[k][j])%10000; } c.a[i][j]=ans%10000; } } return c;}int main(){ int m; while( scanf("%d", &m) != -1 ){ if(m==-1) break; init(); while(m>0){ if(m&1){ anser = multi(anser, need); } need = multi(need, need); m = m>>1; } printf("%d\n", anser.a[0][1]%10000); } return 0;}
0 0
- POJ 3070 Fibonacci 矩阵快速幂
- poj - 3070 - Fibonacci(矩阵快速幂)
- 矩阵快速幂 Fibonacci 3070 poj
- POJ 3070 Fibonacci (矩阵快速幂)
- poj 3070 Fibonacci (矩阵快速幂)
- poj 3070 Fibonacci(矩阵快速幂)
- poj 3070 Fibonacci 矩阵快速幂
- POJ 3070 Fibonacci(矩阵快速幂)
- poj 3070 Fibonacci(矩阵快速幂)
- POJ-3070 Fibonacci 矩阵快速幂
- Fibonacci - POJ 3070 矩阵乘法快速幂
- poj 3070 Fibonacci(矩阵快速幂)
- poj 3070 Fibonacci 矩阵快速幂
- POJ 3070 Fibonacci(矩阵快速幂)
- POJ 3070 Fibonacci(矩阵快速幂)
- poj 3070 Fibonacci 矩阵快速幂
- poj 3070 Fibonacci 【矩阵快速幂】
- POJ 3070 Fibonacci.(矩阵快速幂)
- JVM运行时数据区
- Android属性动画深入分析:让你成为动画牛人
- java-IO流(上)
- Ubuntu14.0 下Hadoop启动报Error: JAVA_HOME is not set and could not be found解决办法
- Hibernate Search
- poj 3070 Fibonacci 矩阵快速幂
- JPush极光推送个人理解
- Groovy笔记-关于joda-time和excel-import插件适用的grails版本问题
- VC编程实现对位图图像自动色阶处理
- 使用surfaceview画贝塞尔曲线+旋转背景图片
- iOS笔记(常用的一些知识点)
- 图片文件不是项目一部分或其"生成操作"属性未设置为“资源”
- Meteor Shower 广搜
- linux下RAID磁盘阵列说明