贪心+背包

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

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;
}
相关推荐
ZTLJQ4 分钟前
基于机器学习的三国时期诸葛亮北伐失败因素量化分析
人工智能·算法·机器学习
JohnFF27 分钟前
48. 旋转图像
数据结构·算法·leetcode
bbc12122627 分钟前
AT_abc306_b [ABC306B] Base 2
算法
生锈的键盘35 分钟前
推荐算法实践:movielens数据集
算法
董董灿是个攻城狮36 分钟前
Transformer 通关秘籍9:词向量的数值实际上是特征
算法
林泽毅1 小时前
SwanLab x EasyR1:多模态LLM强化学习后训练组合拳,让模型进化更高效
算法·llm·强化学习
小林熬夜学编程1 小时前
【高并发内存池】第八弹---脱离new的定长内存池与多线程malloc测试
c语言·开发语言·数据结构·c++·算法·哈希算法
刚入门的大一新生1 小时前
归并排序延伸-非递归版本
算法·排序算法
独好紫罗兰1 小时前
洛谷题单3-P1980 [NOIP 2013 普及组] 计数问题-python-流程图重构
开发语言·python·算法
独好紫罗兰1 小时前
洛谷题单3-P1009 [NOIP 1998 普及组] 阶乘之和-python-流程图重构
开发语言·python·算法