【USACO4-1-1】麦香牛块 数学

原题

noip2017day1t1

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

using namespace std;

#define maxx 256*256

int n,ans=0;
int f[maxx+10],a[1009];

int main()
{
    scanf("%d",&n);f[0]=1;
    for (int i=1;i<=n;i++) scanf("%d",&a[i]);
    for (int i=1;i<=maxx;i++)
        for (int j=1;j<=n;j++)
        if (i>=a[j]) f[i]|=f[i-a[j]];
    for (int i=maxx;i>=1;i--)
        if (!f[i]) {ans=i;break;}
    if (ans>maxx-2*256) ans=0;
    printf("%d\n",ans);
    return 0;
}


猜你喜欢

转载自blog.csdn.net/dadatu_zhao/article/details/80443343
今日推荐