P1855 榨取kkksc03

image
image

题目思路与解法都与 NASA的食物计划 https://www.luogu.com.cn/problem/P1507 类似

是二维01背包

#include<bits/stdc++.h>
using namespace std;
int f[500][500];
int a[110],b[110];
int main(){
	int x,n,m;
	cin>>x>>n>>m;
	for(int i=1;i<=x;i++){
		cin>>a[i]>>b[i];
	}
	for(int i=1;i<=x;i++){
		for(int j=n;j>=a[i];j--){
			for(int k=m;k>=b[i];k--){
				f[j][k]=max(f[j][k],f[j-a[i]][k-b[i]]+1);
			}
		}
	}
	cout<<f[n][m];
	return 0;
}
posted @ 2023-11-11 22:52  yufan1102  阅读(37)  评论(0)    收藏  举报