HDU1021 Fibonacci Again 循环节||取模
来源:互联网 发布:淘宝微星游戏本旗舰店 编辑:程序博客网 时间:2024/06/05 20:37
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1021
题目大意:已知f[0]=7,f[1]=11,f[i]=f[i-1]+f[i-2](i>1),让你判断f[n]是否能被3整除。
分析:考虑对3取模,可以找出循环节,n的范围为10^6,也可以打表。
循环节实现代码如下:
#include <iostream>#include <cstdio>using namespace std;int main(){ int f[100],i,n; f[0]=7,f[1]=11; for(i=2;i<100;i++) { f[i]=(f[i-1]%3+f[i-2]%3)%3; if(f[i]==f[1]&&f[i-1]==f[0]) break; } while(scanf("%d",&n)!=-1) { if(f[n%i]) puts("no"); else puts("yes"); } return 0;}
打表实现代码如下:
#include <cstdio>using namespace std;const int MAX=1000001;int f[MAX];void init(){ int i; f[0]=7;f[1]=11; for(i=2;i<MAX;i++) f[i]=(f[i-1]%3+f[i-2]%3)%3;}int main(){ init(); int n; while(scanf("%d",&n)!=-1) { if(f[n]==0) puts("yes"); else puts("no"); } return 0;}
0 0
- HDU1021 Fibonacci Again 循环节||取模
- HDU1021 Fibonacci Again
- hdu1021(Fibonacci Again)
- hdu1021 Fibonacci Again
- Fibonacci Again(HDU1021)
- hdu1021 Fibonacci Again
- hdu1021 Fibonacci Again
- hdu1021 数学题 Fibonacci Again
- hdu1021 Fibonacci Again
- HDU1021 Fibonacci Again
- HDU1021 Fibonacci Again
- hdu1021 Fibonacci Again
- HDU1021 Fibonacci Again
- hdu1021 Fibonacci Again 数论
- Fibonacci Again hdu1021
- Fibonacci Again(HDU1021)
- hdu1021 Fibonacci Again
- hdu1021——Fibonacci Again
- line-height之深入理解
- java基础复习之四:注释,标识符,关键字, 变量,常量
- Yii 添加自己的搜索条件
- jdk 1.6 javax.script使用
- asp.net学习路线
- HDU1021 Fibonacci Again 循环节||取模
- Ext.get
- STL学习笔记之算法--algorithmn
- 软中断与硬中断
- IE/FF/Chrome下document.documentElement和document.body的 scrollHeight/scrollTop/clientHeight 以及判断滚动条是否已拉
- 怎样制作「用手机&电脑控制的Arduino-3D打印机器人」– IoBot?
- 不安装Oracle客户端使用PLSQL
- 排序算法之(4)——快速排序
- 字符串连接