poj 2229
来源:互联网 发布:中国人寿网络大学 编辑:程序博客网 时间:2024/06/07 04:50
如果i为奇数,肯定有一个1,把f[i-1]的每一种情况加一个1就得到fi,所以f[i]=f[i-1]
如果i为偶数,如果有1,至少有两个,则f[i-2]的每一种情况加两个1,就得到i,如果没有1,则把分解式中的每一项除
2,则得到f[i/2]
所以f[i]=f[i-2]+f[i/2]
由于只要输出最后9个数位,别忘记模1000000000
#include <stdio.h>int main() {int n;int f[1000005];f[1] = 1;f[2] = 2; for(int i=3; i<=1000000; i++) {if(i%i)f[i] = f[i-1];else {f[i] = f[i-2] + f[i/2];f[i] %= 1000000000;}}scanf("%d", &n);printf("%d\n", f[n]);return 0;}
0 0
- poj 2229
- POJ-2229
- poj 2229
- poj----2229
- poj-2229
- POJ - 2229
- poj 2229
- poj 2229
- poj--2229
- poj 2229
- poj 2229
- poj 2229
- poj 2229
- POJ 2229
- POJ 2229 Sumsets
- poj 2229 Sumsets
- [POJ] 2229 Sumsets
- poj 2229 dp
- 通过python发送带附件(支持多个附件)的邮件
- Study《清除PLSQL Developer访问记录》
- 十五章 运用"@""."
- 查看apache加载了哪些模块
- (一)解析第三方接口封装为对象
- poj 2229
- Oracle
- Django rest framework 学习笔记
- Hybird App混合移动应用开发技术整体解决方案,速来围观!
- Effective BCB Form Program(1) ——窗体事件驱动链引发程序错误分析
- 蓝牙Bluetooth 5.0 室内定位 Indoor Position学习(二)
- Web——请求转发与响应重定向
- 单向链表的基本操作
- @color/white编译错误