630. 课程表 III
这里有 n
门不同的在线课程,他们按从 1
到 n
编号。每一门课程有一定的持续上课时间(课程时间)t
以及关闭时间第 d 天。一门课要持续学习 t
天直到第 d 天时要完成,你将会从第 1 天开始。
给出 n
个在线课程用 (t, d)
对表示。你的任务是找出最多可以修几门课。
示例:
输入: [[100, 200], [200, 1300], [1000, 1250], [2000, 3200]] 输出: 3 解释: 这里一共有 4 门课程, 但是你最多可以修 3 门: 首先, 修第一门课时, 它要耗费 100 天,你会在第 100 天完成, 在第 101 天准备下门课。 第二, 修第三门课时, 它会耗费 1000 天,所以你将在第 1100 天的时候完成它, 以及在第 1101 天开始准备下门课程。 第三, 修第二门课时, 它会耗时 200 天,所以你将会在第 1300 天时完成它。 第四门课现在不能修,因为你将会在第 3300 天完成它,这已经超出了关闭日期。
提示:
- 整数 1 <= d, t, n <= 10,000 。
- 你不能同时修两门课程。
class Solution {
public:
int scheduleCourse(vector<vector<int>>& courses) {
int curTime = 0;
priority_queue<int> q;
sort(courses.begin(), courses.end(), [](vector<int>& a, vector<int>& b) {return a[1] < b[1];});
for (auto course : courses) {
curTime += course[0];
q.push(course[0]);
if (curTime > course[1]) {
curTime -= q.top(); q.pop();
}
}
return q.size();
}
};
630. 课程表 III相关推荐
- LeetCode 807. 保持城市天际线 / 630. 课程表 III(贪心+优先队列)/ 851. 喧闹和富有(拓扑排序)
807. 保持城市天际线 2021.12.13 每日一题 题目描述 给你一座由 n x n 个街区组成的城市,每个街区都包含一座立方体建筑.给你一个下标从 0 开始的 n x n 整数矩阵 grid ...
- 【数据结构与算法】之深入解析“课程表III”的求解思路与算法示例
一.题目要求 这里有 n 门不同的在线课程,按从 1 到 n 编号,给你一个数组 courses,其中 courses[i] = [durationi, lastDayi] 表示第 i 门课将会持续上 ...
- C#LeetCode刷题-贪心算法
贪心算法篇 # 题名 刷题 通过率 难度 44 通配符匹配 17.8% 困难 45 跳跃游戏 II 25.5% 困难 55 跳跃游戏 30.6% 中等 122 买卖股票的最佳时机 II C#LeetC ...
- 贪心(Greedy Algorithm)
贪心(Greedy Algorithm) 贪心 44.通配符匹配 45.跳跃游戏 II 55.跳跃游戏 122.买卖股票的最佳时机II 134.加油站 135.分发糖果 179.最大数 277.搜寻名 ...
- 如何学好C语言--你的学渣朋友告诉你
光说不练假把式,光练不说傻把式,又练又说真把式. 真实感受,不是我不想学,是我真的不知道我哪里不会啊和得怎么做啊?本文作者当初就是这么废掉的 推荐两个练习的网站 (一)C语言网 https://www ...
- LeetCode专题
LeetCode解题笔记 前言 复习 树 数组专题 字符串专题 动规专题 哈希表 排序 每日一题 前言 前段时间因为考试等懈怠了,重新开始做题.决定专门开一篇博客迭代记录了,不然文章散乱. 339.除 ...
- LeetCode中的那些题
目录 1. 两数之和 2. 两数相加 3. 无重复字符的最长子串 *******4.寻找两个有序数组的中位数(官方解答) : 5.最长回文子串(官方解答) 15. 三数之和 16. 最接近的三数之和 ...
- leetcode 转载
转载: https://blog.csdn.net/love905661433/article/details/84980135 LeetCode 1- 100 1. 两数之和 : https://b ...
- 优先队列(priority queue)
目录 一,优先队列 二,STL优先队列 三,二叉堆实现优先队列 四,二项堆实现优先队列 五,线段树实现优先队列 六,OJ实战 力扣 295. 数据流的中位数 一,优先队列 优先队列可以插入元素.查询最 ...
- Leetcode题目分类指南(单独刷题或学习算法书籍配合使用)
Leetcode题目分类指南 笔者在学习<算法导论>同时,希望能够配合Leetcode的题目进行分类模块化练习,该分类为笔者自己根据做题学习经验,结合<算法导论>的内容,给出L ...
最新文章
- Vivado清理和压缩工程的方法
- GBRT(GBDT)(MART)(Tree Net)(Tree link)
- libevent -简单的异步IO介绍
- Java正则表达式入门
- 下一代大数据即时分析架构--IOTA架构
- ACOUG 联合创始人盖国强:万象更新,数据库技术和生态的发展演进
- vue实践06-项目实践
- 《软件构架实践》(六) —— 构架编档
- 在CentOS6.9中搭建HBase
- Cesium中HeadingPitchRoll
- docker 监控容器的cpu、内存、网络、io情况
- 基于node.js和oicq的qq机器人 制作回顾分析笔记
- 工业机器人图册 索罗门采夫_机械手控制电路 机电一体化毕业设计论文.doc
- fritzing元件太少_Arduino电路设计软件Fritzing
- java 调用本地播放器_Java调用本地播放器播放视频文件
- html雪花飘落效果,使用js实现雪花飘落效果
- codeforces每日5题(均1500)-第八天
- php正则判断数字和英文,PHP正则匹配中英文、数字及下划线的方法【用户名验证】...
- 09 在ubuntu中切换多终端的方法
- 合成大西瓜unity总结
热门文章
- java nmap集成_nmap为了开发方便 可以做简单的修改
- 重学Es6 Promise
- Content Delivery Network (CDN)
- Cannot complete this action,please try again. Correlation ID :bd640a9d-4c19-doff-2fe0-6ce1104b59ae
- 快速搭建MongoDB分片集群
- http服务器和application服务器区别
- 关于Excel导入SQLServer的说明
- GEF:应用示例列表
- dis的前缀单词有哪些_学好单词得靠词根词缀来帮忙
- 大数据概念思维导图_【数据整理】一份思维导图,学完Tableau Prep(下)