Ac

Lee  •  7天前


include<bits/stdc++.h>

using namespace std; int dp[5001][50]; int temp[50]; int main(){

int k,v,n;
cin>>k>>v>>n;
memset(dp,0xf0,sizeof dp);	
for(int i=1;i<=n;i++){
	dp[0][0]=0;
	int x,y;
	cin>>x>>y;
	for(int j=v;j>=x;j--){
		int p1=0,p2=0;
		for(int a=0;a<k;a++){
			if(dp[j][p1]<dp[j-x][p2]+y){
				temp[a]=dp[j-x][p2]+y;
				p2++;
			}
			else{
				temp[a]=dp[j][p1];
				p1++;
			}
		}
		for(int a=0;a<k;a++){
			dp[j][a]=temp[a];
		}
	}
}
int ans=0;
for(int a=0;a<k;a++){
	if(dp[v][a]>=0){
		ans+=dp[v][a];
	}
}
cout<<ans;
return 0;

}


评论:

请先登录,才能进行评论