90分求调
查看原帖
90分求调
1354127
EGGY_PRATE楼主2024/8/18 11:25
#include<bits/stdc++.h>
using namespace std;
int t,m;
int dp[2][100000005];
int main(){
	cin>>t>>m;
	for(int i=1;i<=m;i++){
		int v,w;
		cin>>v>>w;
		for(int j=1;j<=t;j++){
			if(v>j){
				dp[i&1][j]=dp[(i-1)&1][j];
				continue;
			}
			dp[i&1][j]=max(dp[(i-1)&1][j],dp[(i)&1][j-v]+w);
		}
	}
	cout<<dp[m&1][t];
	return 0;
}
2024/8/18 11:25
加载中...