20分求救!
查看原帖
20分求救!
957640
Michelle01楼主2023/7/29 22:20
#include <stdio.h>
#include<algorithm>
#include<math.h>
#include<iostream>
using namespace std;

int dp[1010][1010];
int timm[1010];
int mo[1010];

int main() {

	int t, m;
	cin >> t >> m;
	for (int i = 1; i <= m; i++) {
		cin >> timm[i] >> mo[i];
	}
	for (int i = 1; i <= m; i++) {
		for (int j = 1; j <= t; j++) {
			if (j < mo[i]) {
				dp[i][j] = dp[i - 1][j];
			}
			else {
				dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - timm[i]] + mo[i]);
			}
		}
	}
	cout << dp[m][t];

	return 0;
}
2023/7/29 22:20
加载中...