0/1区间dp。取一些不相交的区间。使得收益最大。对于一个区间[a, b], 其收益为v。对于b之后所有与[a,b]不相交的区间来说,v肯定能选,用lower_bound找出第一个大于等于b的区间的收益x,则选取该区间的收益为x+v。但是[a,b]不一定选,因为如果有区间和它相交,则肯定会被lower_bound跳过,所以x+v就要和当前的最大值mx比较。保存最大值。

class Solution {
public:int jobScheduling(vector<int>& startTime, vector<int>& endTime, vector<int>& profit) {map<int, int> times; // times[i]表示到i结束的任务的最大收益for(int i : startTime)times[i] = 0;unordered_map<int, vector<pair<int, int>>> jobs;for(int i = 0; i < startTime.size(); i++)jobs[startTime[i]].push_back({endTime[i], profit[i]});int mx = 0;for(auto it = rbegin(times); it != rend(times); it++) // 根据结束时间从后往前算{for(auto job : jobs[it->first]){auto it = times.lower_bound(job.first); // 大于等于job结束时间能获得的最大收益mx = max(mx, job.second + (it == end(times) ? 0 : it->second));}it->second = mx;}return mx;}
};

leetcode 5233 Maximum Profit in Job Scheduling相关推荐

  1. Leetcode 1235. Maximum Profit in Job Scheduling (python)

    Leetcode 1235. Maximum Profit in Job Scheduling 题目 解法1:dp 解法2:dp+binary search 二刷 题目 解法1:dp 这倒题目用dp来 ...

  2. Leetcode 1599. Maximum Profit of Operating a Centennial Wheel (python)

    Leetcode 1599. Maximum Profit of Operating a Centennial Wheel 题目 解法: 题目 题目太长,直接放链接吧 https://leetcode ...

  3. LeetCode 421. Maximum XOR of Two Numbers in an Array--Python解法

    LeetCode 421. Maximum XOR of Two Numbers in an Array–C++,Python解法 LeetCode题解专栏:LeetCode题解 我做的所有的Leet ...

  4. Maximum Profit Aizu - ALDS1_1_D

    Maximum Profit You can obtain profits from foreign exchange margin transactions. 你可以从外汇保证金交易中获得利润. F ...

  5. 【DP】LeetCode 53. Maximum Subarray

    LeetCode 53. Maximum Subarray Solution1:我的答案 动态规划 class Solution { public:int maxSubArray(vector< ...

  6. 【动态规划】LeetCode 53. Maximum Subarray

    LeetCode 53. Maximum Subarray 原题描述(求子序列最大和/最大子串):Find the contiguous subarray within an array (conta ...

  7. Maximum Profit(C++最大利益简单算法)

    竞赛训练1 入门问题:Maximum Profit 题目: 外汇交易可以通过兑换不同国家的货币以赚取汇率差.比如1美元兑换100日元时购入1000美元,然后等汇率变动到一美元兑换108日元时再卖出,这 ...

  8. LeetCode 826 Most Profit Assigning Work

    LeetCode 826 Most Profit Assigning Work 传送门 题目分析 We have jobs: difficulty[i] is the difficulty of th ...

  9. 【Aizu ALDS1_1_D --- Maximum Profit】

    [Aizu ALDS1_1_D --- Maximum Profit] Description You can obtain profits from foreign exchange margin ...

最新文章

  1. 微软WSUS服务器 3.0安装配置详解
  2. Pytorch网络结构可视化
  3. 2021年,推荐你使用.NET 5的7大原因
  4. Apache Commons SCXML:有限状态机实现
  5. java如何关闭一个线程_如何关闭一个java线程池
  6. Java lambda list转换map时,把多个参数拼接作为key
  7. 《More_Effective_C++》pdf
  8. 拷贝一个用户下的所有表和数据到另外一个库
  9. Oracle11g在Windows和Linux下imp导入表,exp导出表,sqluldr2导出表,sqlldr导入表
  10. Prescan基础知识总结
  11. Python中 的Hash表查找与List的index()对比
  12. 《Java 核心技术 卷1》 笔记 第六章 接口和内部类(3) 接口回调与内部类
  13. 【隔离的CAN通信接口-1Mbps】
  14. 2020算法提前批_2020年网页设计的极大沉默,算法可理解性的ni灭
  15. 测试用例设计—场景分析法
  16. php无限评论回复_php实现无限级评论功能
  17. opc客户端读取数据品质是bad_如何通过OPC自定义接口来实现客户端数据的读取
  18. 计算机cpu配置,怎么看cpu配置?查看电脑cpu等硬件配置的操作
  19. 那些容易被忽视却很常见的安全问题
  20. 小学生10以内加减法自动出题程序

热门文章

  1. 助创cms众筹 php,助创cms汽车众筹系统:仿车车车汽车众筹源码程序
  2. 【Java】将输入的 24 小时制时间转换为 12 小时制时间
  3. 东南蒙纳士计算机复试,2016年东南大学——蒙纳士大学双硕士学位研究生复试通知...
  4. 2022图像翻译/扩散模型:UNIT-DDPM: UNpaired Image Translation with Denoising Diffusion Probabilistic Models
  5. 传统商道谋定重整电商奇迹-经信研究:李玉庭谈红孩子模式
  6. 时间的朋友——观后感
  7. 【唐诗学习】四、边塞诗派代表
  8. 0 公式 0 基础学习电磁兼容 — 1. EMC 测试类型简介
  9. 音频转文字怎么转?这些方法值得一试
  10. 孤岛危机估算章节没有回应