【LeetCode - 1235. hard】规划兼职工作

题干:

 

先来看简单版本:

n个区间,求最大的不相交区间数

【51NOD—贪心算法专题】 D 做任务一 区间贪心+最大不相交子区间数_荷叶田田_的博客-CSDN博客

如果限定这道题的报酬都是1,那么就转化成【最大不相交区间数】了。 

那道题直接贪心即可(其中又分两种思路,右端点贪心,能选则选。左端点贪心,能选择试图选,有更优则取更优)

这道题带权值了,所以加个dp

官方题解是dp+二分,我这种写法是离散化+枚举dp,我的代码复杂度更高一些,可以直接看官网做法。

AC代码:

class Solution {
public:struct Node{int st,ed,p, i;Node(){}Node(int st, int ed, int p,int i):st(st), ed(ed), p(p),i(i){}};static bool cmp(Node a, Node b) {return a.ed < b.ed;}Node nn[500005];int dp[500005];vector<int >vv[500005];int jobScheduling(vector<int>& startTime, vector<int>& endTime, vector<int>& profit) {int n = startTime.size();set<int> ss;for(int i = 0; i<n; i++) {ss.insert(startTime[i]);ss.insert(endTime[i]);}map<int, int> mp;int cnt = 0; // [1, cnt]for(auto x : ss) {mp[x] = ++cnt;}for(int i = 0; i<n; i++) {nn[i] = Node{mp[startTime[i]], mp[endTime[i]], profit[i], i};}sort(nn, nn+n, cmp);for(int i = 0; i<n; i++) {vv[nn[i].ed].push_back(i);}//枚举时间点for(int i = 1; i<=cnt; i++) {dp[i] = dp[i-1];for(auto idx : vv[i]) {dp[i] = max(dp[i], dp[nn[idx].st]+nn[idx].p);}}return dp[cnt];}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/439175.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HTML 链接 强制打开“另存为...”弹出式文本链接打开HTML

现在的HTML5里有一个download属性&#xff0c;可以直接进行另存为&#xff0c;还可以自己重新命名文件。。。 <a href"file link" download"filename.ext" target"_blank">Click here to download</a> HTML <a> download 属性…

【转】 CPU、MCU、MPU、DSP的区别和介绍

CPU&#xff1a; 中央处理器&#xff08;CPU&#xff0c;Central Processing Unit&#xff09;是一块超大规模的集成电路&#xff0c;是一台计算机的运算核心&#xff08;Core&#xff09;和控制核心&#xff08; Control Unit&#xff09;。它的功能主要是解释计算机指令以及…

禁止word另存为,禁止图片另存为excel禁止另存为

在很多企事业单位&#xff0c;处于商业机密保护的需要&#xff0c;常常需要禁止一些文件格式的“另存为”功能&#xff0c;防止通过“另存为”将文件另行保存&#xff0c;据为己有的目的&#xff1b;尤其是在局域网中访问服务器共享文件的时候&#xff0c;常常需要禁止将共享文…

Office web app server2013详细的安装和部署

SharePoint 2013集成Office web apps server2013详细的安装和部署 安装前的需要理解的&#xff1a; 1、Office Web Apps 只能由使用基于声明的身份验证的 SharePoint 2013 Web 应用程序使用。Office Web Apps 呈现和编辑在使用经典模式身份验证的 SharePoint 2013 Web 应用程序…

借助office web apps实现在线预览和在线编辑

我所有的代码都是用go语言编写&#xff0c;你可以直接编译后使用&#xff0c;不用再有其他的操作。 最近项目实在太忙&#xff0c;这几天才有时间&#xff0c;这次是重头戏&#xff0c;要好好琢磨一下怎么写&#xff0c;才能更简洁的说清楚一切。 上一节&#xff0c;我们已经安…

【转】WOPI host消息体结构

wopi协议通过JSON格式传递参数&#xff1a; {"AllowExternalMarketplace":{"type":"bool","default":false,"optional":true},"BaseFileName":{"type":"string","optional":false}…

Dbml文件提取建表TSql-CodeSmith

在昨天一个大学师弟&#xff0c;他问我能不能将LinqToSql文件转化为创建表的TSql语句&#xff0c;他是刚开始学习.NET&#xff0c;所以在网上下些示例看&#xff0c;但苦于没有数据库。所以就有了这一篇博客&#xff0c;作为我的Code生成技术的CodeSimth的最后一篇示例。在下一…

(译)你应该知道的jQuery技巧

帮助提高你jQuery应用的简单小技巧。 回到顶部按钮图片预加载判断图片是否加载完自动修补破损图像Hover切换class类禁用输入停止正在加载的链接toggle fade/slide简单的手风琴使两个DIV同等高度在浏览器标签/新窗口打开外部链接根据文本获取元素可见变化的触发Ajax调用错误处理…

DNS的A、CNAME、MX、NS、TXT、SPF记录

前言 最近工作过程中需要设定邮件服务器&#xff0c;其中涉及到dns服务器的设定。 整理并且记录自己的理解。 种类 A、CNAME、MX、NS、TXT、SPF 下面挨个介绍一下。 A记录/AAAA记录 IPv4&#xff1a; 示例&#xff1a;ns1.exmaple.com. IN A 198.51.100.2解释&#xff1a…

【转】新思想、新技术、新架构——更好更快的开发现代ASP.NET应用程序(续1)

上周星期天开通了博客并发布了第一篇文章《新思想、新技术、新架构——更好更快的开发现代ASP.NET应用程序》&#xff0c;汇集了一些比较流行的技术和开源项目&#xff0c;也把自己的程序架构、部分代码风格、前端表现简单做了一些展示&#xff0c;引起了近100位朋友的评论。特…

CCNA-Cisco-Packet-Tracerchs(思科官网)安装教程以及使用

Cisco-Packet-Tracerchs 思科官网模拟器&#xff0c;各大高校与中职都在使用。 但是由于支持的命令不太多&#xff0c;适用于NA阶段以及入门阶段的人群使用。 以下是免费百度网盘链接&#xff1a; https://pan.baidu.com/s/136fsYRnAfzGoj0DsQFaYTg 提取码: qa4e 复制这段内容…

CCNA-VLAN讲解与交换机三种端口模式(Acess,Trunk,Hybrid)小白入门级

VLAN讲解与三种端口模式(Acess,Trunk,Hybrid) TAG:所有文章均为原创&#xff0c;可以转载但请声明&#xff0c;是在学校里面做的&#xff0c;使用不了EVE和ENSP&#xff0c;请各路大神嘴下留情&#xff0c;如文章内容有误导请及时联系博主----来自一个17岁的中专生。 1.什么是V…

【转】2015-新思想、新技术、新架构——更好更快的开发现代ASP.NET应用程序

在博客园学习很长时间了&#xff0c;今天终于自己也开通了博客&#xff0c;准备分享一些感悟和经验。首先感谢博客园园主提供了这么好的程序员学习交流平台&#xff0c;也非常感谢张善友、dax.net、netfocus、司徒正美 等技术大牛的无私分享&#xff0c;从他们身上学到了很多。…

工作篇-佛山三水恒大-2020.10.23

** 工作篇-佛山三水恒大-2020.10.23 **人生第一次工作啊啊啊啊啊 其实按道理来说&#xff0c;第一次应该会很很紧张吧&#xff0c;不过我倒没有。 也不知道是我不怕还是什么&#xff0c;一切进行的挺顺利的。 前言&#xff1a;讲真那句&#xff0c;第一次做的话&#xff0c;…

UWP 使用OneDrive云存储2.x api(一)【全网首发】

最近开发人脸识别UWP【微识别 / WeRecognition】用到了OneDrive开发&#xff0c;下面把来龙去脉讲一下。 下载地址 https://www.microsoft.com/store/productId/9PDSNS7X9ST9&#xff0c;商店火爆热销中。。。。。。 由于UWP是跨平台的&#xff0c;一套代码可以运行在所有Wind…

CCNA-第一篇-基础入门概念

** 基础入门概念 **前言 没有什么学习是简单的.任何东西,包括你打游戏(除非是弱智的单机游戏)搞IT,一个月熬熬夜 月薪过X-W的大有人在,早9晚5一个月3K,自己选择.所以看你怎么学,每个人都很忙的,时间都是挤出来的. 一.网络基本概念入门 网络设备调试最基本的概念网络环境设计设…

UWP 使用OneDrive云存储2.x api(二)【全网首发】

上一篇提到为了给用户打造一个完全无缝衔接的最佳体验&#xff0c;UWP开发者最好也要实现App设置和数据的跨平台 分析了数据漫游和OneDrive的优缺点&#xff0c;结合自己App实际需要&#xff0c;我选择了OneDrive。 毕竟数据漫游100KB不够用啊。。。 这一次给大家我千辛万苦找…

CCNA-第二篇-路由器交换机概述

CCNA-第二篇-路由器交换机概述 为什么交换机可以转发&#xff1f; 1.使用MAC地址表 2.MAC地址表怎么来的呢&#xff1f;交换机自动学习 问题来了&#xff1a;PC是如何知道对端的MAC地址的呢&#xff1f; 我们在通信的到时候&#xff0c;不可能问你MAC多少吧&#xff0c;一般都是…

sharepoint当流程流转到某个节点对文档进行水印操作

sharepoint在流程中给文档库中的word或者pdf添加水印。 断断续续的搞了很久。总的解决方案如下&#xff1a; 在流程中&#xff0c;当运行到某步的时候&#xff0c;通过自定义代码调用后台方法&#xff0c;进行相关操作。 针对word的水印操作&#xff1a; 这里就不多说了网上有很…

CCNA-第三篇-OSI模型-上

CCNA-第三篇-OSI模型-上 OSI七层模型-上 第七层 应用层 第六层 表示层 第五层 会话层 第四层 传输层定义数据发送方式 TCP UDP 第三层 网络层ICMP协议,网络设备 第二层 数据链路层交换机 -可以实现定向数据转发(依靠MAC表,自动学习) -如何自动学习:当接口收到数据后,自动记录,记…