http://acm.hdu.edu.cn/showproblem.php?pid=1248

 

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <algorithm>
#define maxn 11000
using namespace std;
int dp[maxn];

int main()
{
    int T, n;

    scanf("%d", &T);

    int a[3]={150, 200, 350};

    while(T --)
    {
        scanf("%d", &n);

        memset(dp, 0, sizeof(dp));

        for(int i=0; i<3; i++)
        {
            for(int j=a[i]; j<=n; j++)
            {
                dp[j]=max(dp[j], dp[j-a[i]]+a[i]);
            }
        }

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

 

posted on 2016-09-27 20:40  不忧尘世不忧心  阅读(232)  评论(0编辑  收藏  举报