Sumsets POJ
来源:互联网 发布:python set insert 编辑:程序博客网 时间:2024/05/22 06:37
题意:给一个数,将其进行分解,只能分解为2的幂次,最多能分解多少种。
分析:对于奇数n,F(n)与F(n-1)只有一个1的差别,所以n的最大分解种一定和n-1相同。
对于偶数m,F(m)由两种类型的组合组成,一部分是不包含1的组合(不包含1时的种类就等于F(m/2)的种类数,因为此时的队列的所有元素都除以2的话就是F(m/2)的组合)
收获:向前寻找相关性的技巧,dp的省时。
#include<stdio.h>unsigned long long number[1000005];void get_number(){ number[0]=0; number[1]=1; number[2]=2; number[3]=2; for(int i=4;i<1000005;i++) { if(i%2==0) { number[i]=(number[i-2]+number[i/2])%1000000000; } if(i%2==1) { number[i]=number[i-1]%1000000000; } } return ;}int main (){ get_number(); int n; scanf("%d",&n); printf("%lld",number[n]); return 0;}
0 0
- 【POJ】Sumsets
- Sumsets POJ
- Sumsets POJ
- POJ 2229 Sumsets
- poj 2229 Sumsets
- poj 2549 Sumsets
- poj 2549 Sumsets
- [POJ] 2229 Sumsets
- Sumsets Uva10125 poj
- sumsets poj 2229
- POJ 2549 Sumsets
- POJ-2549-Sumsets
- POJ-2229-Sumsets
- poj 2229 Sumsets
- poj 2229 Sumsets DP
- POJ 2229 Sumsets DP
- poj 2229 Sumsets
- poj-2229-Sumsets
- windows 下如何使用 Lua 语言绘制正弦函数图像?代码
- JPA日志批量入库
- 关于rem的个人见解
- CSS-overflow
- pdf解密工具
- Sumsets POJ
- python打包
- 设计模式 (5)——工厂方法模式(Factory Method,创建型)
- web前台
- 并查集
- Mac下修改Android Studio 所用的JDK版本
- android library引用失败,出现红叉叉解决办法
- 项目开发心得
- Linux下利用GDB调试快速找到Bug