USACO3.1Score Inflation(inflate)

645 ワード

この問題は前にやったコイン交換の問題とほとんど同じで、完全リュックサック問題の解法で直接解くことができます.ここでダイナミックな計画を復習したいのですか?ははは.
明日からデジタルモデルを始めます.これは何もありません.休みになりました.学校の周りには食べ物がありません.お腹がすいて暑くて、この天気ですね.
 
/*
ID:jzzlee1
TASK:inflate
LANG:C++
*/
//#include<iostream>
#include<fstream>
using namespace std;
int f[10010],w[10010],c[10010];
ifstream cin("inflate.in");
ofstream cout("inflate.out");
int main()
{
	int v,n,ans=0;
	cin>>v>>n;
	for(int i=0;i!=n;i++)
		cin>>w[i]>>c[i];
	for(int i=0;i<n;i++)
		for(int j=c[i];j<=v;j++)
			f[j]=max(f[j],f[j-c[i]]+w[i]);
	cout<<f[v]<<endl;
	return 0;
}