poj 2229 Sumsets 【动态规划】

简介: 点击打开题目 Sumsets Time Limit: 2000MS   Memory Limit: 200000K Total Submissions: 13291   Accepted: 5324 Description Far...

点击打开题目

Sumsets
Time Limit: 2000MS   Memory Limit: 200000K
Total Submissions: 13291   Accepted: 5324

Description

Farmer John commanded his cows to search for different sets of numbers that sum to a given number. The cows use only numbers that are an integer power of 2. Here are the possible sets of numbers that sum to 7: 

1) 1+1+1+1+1+1+1 
2) 1+1+1+1+1+2 
3) 1+1+1+2+2 
4) 1+1+1+4 
5) 1+2+2+2 
6) 1+2+4 

Help FJ count all possible representations for a given integer N (1 <= N <= 1,000,000). 

Input

A single line with a single integer, N.

Output

The number of ways to represent N as the indicated sum. Due to the potential huge size of this number, print only last 9 digits (in base 10 representation).

Sample Input

7

Sample Output

6
题目翻译:给出一个数字n,给出一个集合{1,2,4,8,16,32,64。。。。},求n有多少种不同的由集合内的数字的加和情况。

解题思路:本以为是母函数,但是在网上搜了一下结果发现是递推,可以有前面推出后面的结果,原因是和2的指数关系有关。

#include<cstdio>
int dp[1000000+5]={0,1,2,2},i,n;
int main(){
    while(scanf("%d",&n)==1){
        for(i=4;i<=n+1;i+=2){
            dp[i-1]=dp[i-2];
            dp[i]=(dp[i-1]+dp[i>>1])%1000000000;
        }
        printf("%d\n",dp[n]);
    }
    return 0;
}

目录
相关文章
|
JSON 自然语言处理 安全
百度工程师厂外生存指南
百度曾经一度被称为中国互联网的黄埔军校。这句话其实有两方面含义:一是说从百度走出来的工程师活跃在中国各大互联网企业中,对整个中国互联网的繁荣发展做出了贡献。二是说百度如同历史上的黄埔军校一般,为外界培育和输送了大量人才,但是自身却在逐步没落,暗示百度的人才流失严重。然而很多百度厂内高管常以『百度是中国互联网的黄埔军校』而自豪,这只是理解了这句话的第一层含义,却殊不知其第二层。高管们不对厂内人才大量流失的原因做反思,反而因为一句黄埔军校而沾沾自喜。着实让人唏嘘不已。
1345 1
百度工程师厂外生存指南
|
C语言
C语言 父进程fork()出的多个子进程在结束后,父进程如何回收?
我在网上找了半天都是在说wait()和waitpid()的详解或者是单个子进程的回收。答非所问。 很简单,根据wait()或者waitpid()的函数特性。没有子进程时返回-1。
153 0
|
9月前
|
人工智能 调度 芯片
PAI训练服务:云上大模型训练新篇章
本文介绍了通用AI时代下的新训练方法及PAI平台的优化。随着大模型时代的到来,算力需求激增,硬件和网络通信成为瓶颈。PAI平台通过自动容错、3D健康检测等技术确保训练稳定性;通过资源配额、智能调度等提高性价比;并推出PAI-TorchAcc和PAI-ChatLearn两大引擎,分别实现高效训练加速和灵活的对齐训练,显著提升训练性能与效果。这些改进解决了大规模AI训练中的关键问题,提升了效率和稳定性。
|
监控 网络协议 安全
Socket网络编程中的常见应用场景与实例分析
Socket网络编程中的常见应用场景与实例分析
学习计算机组成原理(王道考研)------第十天
这篇文章讨论了考研复习策略,强调了在复习计算机组成原理等科目时,仔细阅读课本的重要性,并指出了在后期复习中课本知识对于提升解题能力的关键作用。
学习计算机组成原理(王道考研)------第十天
|
存储 缓存 Linux
性能测试必备知识(5)- 深入理解“CPU 上下文切换”
性能测试必备知识(5)- 深入理解“CPU 上下文切换”
429 0
性能测试必备知识(5)- 深入理解“CPU 上下文切换”
|
算法 C++ 容器
关系类算法函数
关系类算法函数
|
存储 大数据 Linux
python复习第一章(一)
python复习第一章(一)
151 0
|
Python
python——大智慧--三重指数平滑--TRIX
python——大智慧--三重指数平滑--TRIX
234 0
|
人工智能 自然语言处理 安全
天池数据集 | 精品数据集推荐 医疗行业(上)
随着医疗行业的飞速发展,科研数据在数字化时代中扮演重要的角色。阿里云天池本着合法、安全和隐私保护的原则,和知名机构合作开放了一批有临床科研价值的数据集,覆盖多个技术领域。今天小萌喵就带大家一起看看临床方向的数据集~
741 0
天池数据集 | 精品数据集推荐 医疗行业(上)