• UVA


    People in Cubeland use cubic coins. Not only the unit of currency is
    called a cube but also the coins are shaped like cubes and their values
    are cubes. Coins with values of all cubic numbers up to 9261(= 213
    ),
    i.e., coins with the denominations of 1, 8, 27, : : :, up to 9261 cubes,
    are available in Cubeland.
    Your task is to count the number of ways to pay a given amount
    using cubic coins of Cubeland. For example, there are 3 ways to pay
    21 cubes: twenty one 1 cube coins, or one 8 cube coin and thirteen 1
    cube coins, or two 8 cube coin and ve 1 cube coins.
    Input
    Input consists of lines each containing an integer amount to be paid. You may assume that all the
    amounts are positive and less than 10000.
    Output
    For each of the given amounts to be paid output one line containing a single integer representing the
    number of ways to pay the given amount using the coins available in Cubeland.
    Sample Input
    10
    21
    77
    9999
    Sample Output
    2
    3
    22
    440022018293


    用立方数之和凑出n有多少种方案


    完全背包

    体积是i*i*i,价值是1

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<algorithm>
    using namespace std;
    const int N=1e5+5;
    typedef long long ll;
    int n;
    ll f[N];
    int main(){
        while(scanf("%d",&n)!=EOF){
            memset(f,0,sizeof(f));
            f[0]=1;
            for(int i=1;i<=22;i++)
                for(int j=0;j<=n;j++){
                    if(j-i*i*i>=0) f[j]+=f[j-i*i*i];
                    //printf("%d %d %lld
    ",i,j,f[i][j]);
                }
            printf("%lld
    ",f[n]);
        }
    }
  • 相关阅读:
    HDU-3622 Bomb Game 2sat
    HDU-4115 Eliminate the Conflict 2sat
    POJ-3678 Katu Puzzle 2sat
    [转]2-SAT问题及其算法
    Ros学习——roslaunch
    Ros学习调试——rqt_console
    Ros学习——创建程序包
    Ros学习service——小海龟
    Ros学习topic——小海龟
    旋转矩阵相关变换
  • 原文地址:https://www.cnblogs.com/candy99/p/5978185.html
Copyright © 2020-2023  润新知