hdu 1248 寒冰王座

#include<cstdio>
#include<iostream>
#include<algorithm>
#include<cstring>

using namespace std;

int a[]={150,200,350};
int dp[10010],n;

int solve(int cost,int weight)
{
    int v;
    for(v=cost;v<=n;v++)
        dp[v]=max(dp[v],dp[v-cost]+weight);
}

int main()
{
    int T;
    scanf("%d",&T);
    while(T--)
    {
        scanf("%d",&n);
        memset(dp,0,sizeof(dp));
        for(int i=0;i<3;i++)
            solve(a[i],a[i]);
        printf("%d\n",n-dp[n]);
    }
    return 0;
}

//完全背包转化为01背包。

hdu 1248 寒冰王座

上一篇:微信支付的支付金额计算


下一篇:十个Linux中命令链接操作符的最佳实例