POJ 2229 DP
来源:互联网 发布:恩施网络问政平台 编辑:程序博客网 时间:2024/06/07 23:33
题意:给你个数,让你把它拆成2的幂的和,问有几种拆分方案。
思路:仔细想一想,就是个递推。
- 如果是奇数,那么它的方案数和它减一这个数的方案数是一样的。因为1不能拆成除1以外的2的幂之和。(呃说的不太清楚,意会意会(⊙﹏⊙)b)。【举个例子:100的方案数 和101的方案数是一样的】
- 如果是偶数,那么它的方案数等于它减一这个数的方案数与它除以二这个数的方案数之和。【举个例子:6的方案数=3的方案数+5的方案数】
也可以先手算几个数找找规律,用不完全归纳。
// by Sirius_Ren#include <cstdio>using namespace std;int f[1000001],n;int main(){ scanf("%d",&n); f[1]=1;f[2]=2; for(int i=3;i<=n;i++) if(i&1)f[i]=f[i-1]; else f[i]=(f[i-1]+f[i/2])%1000000000; printf("%d",f[n]);}
代码很短,只有10行。
0 0
- poj 2229 dp
- Poj 2229(dp)
- poj 2229 Sumsets DP
- DP 之 poj 2229
- POJ 2229 Sumsets DP
- POJ-2229 Sumsets DP
- poj 2229 Sumsets【DP】
- Poj 2229 Sumsets【dp】
- POJ 2229 DP
- POJ 2229 Sumsets (dp)
- POJ 2229 (dp)
- poj 2229 Sumsets (DP)
- POJ 2229-Sumsets ( 基础DP)
- 这周dp(POJ-2229)
- POJ 2229-Sumsets(DP)
- POJ 2229 Sumsets (dp)
- POJ 2229 Sumsets(dp)
- POJ 2229 Sumsets(计数dp)
- mongodb增删改查基本操作
- 高精度除法(高精除以低精)——一步一步算法篇
- ==和equals方法及其区别
- android开发人员获取sqlite
- 如何优雅的写作与分享技术?-Markdown 语法简要
- POJ 2229 DP
- fork,你拿什么证明你的写时拷贝(COW)
- Intent传递对象的两种方法(Serializable,Parcelable)
- microstation level2 0503_2
- 搭建自己的svn 外网访问 遇到的问题
- Arrays类的用法
- UVa 12563 Jin Ge Jin Qu hao(DP 多种状态表示)
- 网络请求 编码工具类
- php显示数学公式