poj3070Fibonacci
来源:互联网 发布:网络课程怎么上 编辑:程序博客网 时间:2024/06/05 11:40
第一时间想到把n二进制拆分。
0ms通过的代码:
#include<stdio.h>struct Matrix22{int d11;int d12;int d21;int d22; Matrix22 operator =(Matrix22 a){d11=a.d11;d12=a.d12;d21=a.d21;d22=a.d22;} Matrix22 operator *(Matrix22 b){Matrix22 c;c.d11=(d11*b.d11+d12*b.d21)%10000;c.d12=(d11*b.d12+d12*b.d22)%10000;c.d21=(d21*b.d11+d22*b.d21)%10000;c.d22=(d21*b.d12+d22*b.d22)%10000;return c;}}Matrix[32];int main(){freopen("input.txt","r",stdin);Matrix[0].d11=1;Matrix[0].d12=1;Matrix[0].d21=1;Matrix[0].d22=0;for(int i=1;i<32;i++){Matrix[i]=Matrix[i-1]*Matrix[i-1];}int n;while(scanf("%d",&n)&&n!=-1){Matrix22 output;output.d11=1;output.d12=0;output.d21=0;output.d22=1;int i=0;while(n>0){if(n&1){ output=output*Matrix[i];}i++;n=n>>1;}printf("%d\n",output.d12%10000);}}
- poj3070Fibonacci
- POJ3070Fibonacci
- poj3070Fibonacci
- POJ3070Fibonacci
- poj3070Fibonacci 矩阵快速幂
- poj3070Fibonacci解题报告
- poj3070Fibonacci(矩阵快速幂)
- poj3070Fibonacci【矩阵快速幂】
- POJ3070Fibonacci(矩阵快速幂)(AC)
- poj3070Fibonacci(矩阵快速幂模板)
- Xen虚拟机的创建和启动
- about关于易势
- vxworks volatile变量探索
- started service
- 最锋利的Visual Studio Web开发工具扩展:Web Essentials详解
- poj3070Fibonacci
- Linux内核的ioctl函数学习
- xm list中几种状态的含义
- 我使用过的Linux命令之basename - 去掉文件名的目录和后缀
- c#锁屏
- 说说Android桌面(Launcher应用)背后的故事(四)——揭秘Workspace
- 嵌入式Linux知识:S3C2440上 MMC/SD卡驱动实例开发讲解
- Xen平台上的安全威胁总结
- 栈基本操作的C语言实现(附源代码已测试)