zoukankan      html  css  js  c++  java
  • POJ2229--Sumsets(动态规划)

    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



    #include<iostream>
    #include<algorithm>
    using namespace std;
    int dp[1000005];
    int mod=1e9;
    int main(){
        int n;
        cin>>n;
        dp[0]=1;
        for(int i=1;i<=n;i++){
            if(i%2==1){
                dp[i]=dp[i-1];
            }
            else{
                dp[i]=(dp[i-1]+dp[i>>1])%mod;
            }
        }
        cout<<dp[n]<<endl;
        return 0;
    }
  • 相关阅读:
    jenkins持续集成
    对pm2对研究
    模板⽅法模式
    python configparser模块
    Python正则表达式
    Python读写文件之换行符
    Python字符串
    Python字典
    Python列表
    爬虫 urllib,requests,lxml,bs4 小结
  • 原文地址:https://www.cnblogs.com/albert67/p/10317363.html
Copyright © 2011-2022 走看看