hud1248 Frozen Throne one-dimensional arrays

Typical full knapsack problem
this is a template, the best note of it

#include<stdio.h>
#include<string.h>
int dp[10000];
int max(int a,int b)
{
    return a>b?a:b;
}
int main(void){
    int money,n,i,k,y,j,value[3]={150,200,350},times;
scanf("%d",&times);memset(dp,0,sizeof(dp));
for(n=1;n<=times;n++)
{
     scanf("%d",&money);
    for(i=1;i<=3;i++)
    {
        for(j=value[i-1];j<=money;j++)
        {

                dp[j]=max(dp[j],dp[j-value[i-1]]+value[i-1]);



        }
    }


    printf("%d\n",money-dp[money]);
}

    return 0;
}


Published 11 original articles · won praise 0 · Views 133

Guess you like

Origin blog.csdn.net/weixin_45670020/article/details/104163630