hdu 4291A Short problem
来源:互联网 发布:uv在淘宝什么意思 编辑:程序博客网 时间:2024/06/08 10:34
这道题用栈来递归,结果爆掉了,然后只能借鉴他人的,完全算是copy了别人的代码,转自某个题解…………
求循环节的话就是找到f0 f1就找到了,这个以前做过,又忘掉了,太水了,自己
#include<iostream>#include<stdio.h>using namespace std;typedef long long LL;const LLMOD = 1000000007LL;int main() { LL f0 = 0, f1 = 1, temp = -1; for (LL i = 1;; i++) { temp = (3 * f1 + f0) % MOD; f0 = f1; f1 = temp; if (f0 == 0 && f1 == 1) { printf("%I64d\n", i); break; } } return 0;}//const LL MOD = 1000000007LL;//222222224//const LL MOD = 222222224LL;//183120
循环节找出来,就好了,话说这道题的几个点,我都不会
#include<stdio.h>#include<string.h>#define inta __int64inta a[2][2],b[2][2];inta n;void matr(inta q[2][2],inta p[2][2],int mark){ inta tmp[2][2]; tmp[0][0] = (q[0][0] * p[0][0]%n + q[0][1] * p[1][0]%n)%n; tmp[0][1] = (q[0][0] * p[0][1]%n + q[0][1] * p[1][1]%n)%n ; tmp[1][0] = (q[1][0] * p[0][0]%n + q[1][1] * p[1][0]%n)%n; tmp[1][1] = (q[1][0] * p[0][1]%n + q[1][1] * p[1][1]%n)%n; if(mark){ a[0][0] = tmp[0][0]; a[0][1] = tmp[0][1]; a[1][0] = tmp[1][0]; a[1][1] = tmp[1][1]; } else{ b[0][0] = tmp[0][0]; b[0][1] = tmp[0][1]; b[1][0] = tmp[1][0]; b[1][1] = tmp[1][1]; }}int cal(inta k){ a[0][0] = 1; a[0][1] = 0; a[1][0] = 0; a[1][1] = 1; b[0][0] = 3; b[0][1] = 1; b[1][0] = 1; b[1][1] = 0; while(k){ if (k & 1) { matr(a, b, 1); } matr(b, b, 0); k >>= 1; } return a[0][1];}int main() { inta x; while(scanf("%I64d",&x)!=EOF&&x!=-1){ memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); if(x==0) printf("0\n"); else if(x==1) printf("1\n"); else{ n=183120; x=cal(x); n=222222224; x=cal(x); n=1000000007; x=cal(x); printf("%I64d\n",x); } } return 0;}
- hdu 4291A Short problem
- hdu 4291 A Short problem
- hdu 4291 A Short problem
- HDU 4291 A Short problem
- hdu 4291 A Short problem 矩阵+循环
- 【HDU】4291 A Short problem 矩阵快速幂
- HDU 4291 A Short problem(矩阵快速幂取模求循环节)
- hdu 4291 A Short problem 打表找规律&矩阵快速幂
- HDU 4291 A Short problem(矩阵快速幂+循环节)
- HDU 4291 A Short problem // 矩阵快速幂, 循环节
- hdu 4291 A Short problem(矩阵快速幂)
- HDU 4291-A Short problem-循环节+矩阵快速幂
- HDU-4291 A Short problem(矩阵快速幂)
- hdu 4291 A Short problem(矩阵快速幂)
- hdu4291 A Short problem
- HDU4291-- A Short problem
- A Short problem HDU4291
- hdu4291 A Short problem
- RMAN-06059: expected archived log not found,ORA-19625
- 第三章 电子政务系统的架构设计
- js栏目切换 模仿tab选项卡
- ftok函数创建key重复
- HTML_04(javaScript(02))
- hdu 4291A Short problem
- 第四章 工作流引擎的设计与实现(一)
- Linux下编译jrtplib和jthread:
- 超实用的8个Linux命令行性能监测工具
- task tracker最大任务数设置
- 我是如何学习网站分析的
- 代码
- IMP-00041: Warning: object created with compilation warnings
- In 的用法