(背包)AtCoder153E-Crested Ibis vs Monster

AtCoder153E-Crested Ibis vs Monster

思路:

两天没写代码真的状态好差。
完全背包。

代码:

#include
#define pii pair
#define ll long long
#define cl(x) memset(x,0,sizeof(x))
const int N=1e5+10;
const int mod=1e7+9;
const int maxn=0x3f3f3f3f;
const int minn=0xc0c0c0c0;
const int inf=99999999;
using namespace std;
int dp[N],v[N],w[N];
int main()
{
	ios::sync_with_stdio(false);
	cin.tie(0);cout.tie(0);
	int n,m,i,j;
	cin>>n>>m;
	for(i=1;i<=m;i++)
		cin>>v[i]>>w[i];
	memset(dp,maxn,sizeof(dp));
	dp[0]=0;
	for(i=1;i<=m;i++)
		for(j=1;j<=2e4;j++)
			if(j-v[i]>=0)
				dp[j]=min(dp[j],dp[j-v[i]]+w[i]);
	int ans=maxn;
	for(i=n;i<=2e4;i++)
		ans=min(ans,dp[i]);
	cout<<ans<<endl;
	return 0;
}

你可能感兴趣的:(基础算法,#,dp)