贪心+背包

这道题比较坑的就是我们的对于相同截止时间的需要排个序,因为我们这个工作是有时间前后顺序的,我们如果不排序的话我们一些截止时间晚的工作就无法得到最优报酬

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;

#define int long long
int t;
int n;
const int N = 5005;
struct node{
	int t,end,pr;
	int start;
	bool operator<(node b){
		if(end<b.end) return 1;
		return 0;
	}
}e[N];
int ans = 0;

int dp[N];

signed main(){
	cin >> t;
	while(t--){
		cin >> n;
		int tmax = 0;
		for(int i=1;i<=n;i++){
			cin >> e[i].t >> e[i].end >> e[i].pr;
			e[i].start = e[i].end - e[i].t;
			tmax = max(tmax,e[i].end);
		}
		sort(e+1,e+1+n);
		for(int i=0;i<=5004;i++) dp[i] = 0;
		for(int i=1;i<=n;i++){
			for(int j=e[i].end;j>=e[i].t;j--){
				dp[j] = max(dp[j],dp[j-e[i].t]+e[i].pr);
			}
		}
		int ans = 0;
		for(int i=1;i<=tmax;i++) ans = max(ans,dp[i]);
		cout << ans << endl;
	}
	return 0;
}
相关推荐
m0_720245016 小时前
1543.统计好三元组(简单)
开发语言·算法
To_OC7 小时前
LC 560 和为 K 的子数组:前缀和配哈希表,这对组合我是真的服了
javascript·算法·程序员
hans汉斯7 小时前
《软件工程与应用》期刊推荐&10月版面征稿中
图像处理·人工智能·深度学习·算法·音视频·软件工程
叠层归一研究院8 小时前
AGI 系统(八):符号范畴嵌入函子 — SymCat ↪ C_M107 严格化
c语言·开发语言·人工智能·算法·transformer·agi
其美杰布-富贵-李9 小时前
08 进阶评估指标与算法特定指标
人工智能·算法
.道阻且长.9 小时前
5.LeetCode算法习题讲解--双指针--有效三角形的个数
算法·leetcode·职场和发展
我是海飞9 小时前
杰理JL703N SSD1306 OLED(128x64) 点阵屏移植说明
单片机·算法·嵌入式·音频·杰理
wabs66610 小时前
关于图论【最短路径之Bellman_ford 算法(单源有限最短路)|卡码网96.城市间货物运输III的思考】
数据结构·算法·图论·卡码网·bellman_ford·单源有限最短路
lsylalalala12 小时前
常见的排序算法1
数据结构·算法·排序算法
想吃火锅100513 小时前
【leetcode】54. 螺旋矩阵
算法·leetcode·矩阵