USACO-Score Inflation

來源:http://www.nocow.cn/index.php?diff=next&oldid=2732&title=Inflate_translate

這是一題非常標準的完全揹包問題,不會的參見DD神牛的揹包九講

/*
ID:ay27272
PROG:inflate
LANG:C++
*/

#include <cstdio>
using namespace std;

#define NN 10005

int d[NN]={0},w[NN]={0},f[NN]={0};

int main()
{
    freopen("inflate.in","r",stdin);
    freopen("inflate.out","w",stdout);
    int n,m;
    scanf("%d%d",&n,&m);
    for (int i=1;i<=m;i++)
        scanf("%d%d",&d[i],&w[i]);

    for (int i=1;i<=m;i++)
        for (int j=w[i];j<=n;j++)
            if (f[j-w[i]]+d[i]>f[j])
                f[j]=f[j-w[i]]+d[i];

    printf("%d\n",f[n]);
    return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章