摘要: 阅读全文
posted @ 2019-01-19 10:11 schrodingercatss 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2018-12-29 12:23 schrodingercatss 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2018-12-29 12:23 schrodingercatss 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2018-12-29 12:22 schrodingercatss 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2018-12-29 12:20 schrodingercatss 阅读(594) 评论(0) 推荐(0) 编辑
摘要: "题目传送门" 解题思路 这题我们可以按右端点从小到大排序,我们选择第一条线段作为初始线段,然后判断下一条线段的左端点是否大于等于当前选中线段的右端点即可。 证明:排序后显然当你选了一个线段后,再要从后面选一个线段,其左端点必须 =你的右端点。右端点当然越小越好。 因为这题数据量过大,我们可以使用读 阅读全文
posted @ 2018-12-25 09:58 schrodingercatss 阅读(243) 评论(0) 推荐(0) 编辑
摘要: "题目传送门" 解题思路 最简单的贪心思想,装满就加一,最后判断是否背包变量中还存在值,如果存在,整体的段数+1即可。 cpp include define _for(i,a,n) for(int i=a;i t;while(t ) define close() ios::sync_with_std 阅读全文
posted @ 2018-12-25 09:53 schrodingercatss 阅读(209) 评论(0) 推荐(0) 编辑
摘要: "题目传送门" 解题思路 这题也是典型的贪心算法题。 对于这个问题 先通过实例来认识问题所描述的计算过程。 令$ N=3 $ ,取数列 $ 3,5,7 $ 可能有下面三种情况 $ (3×5+1)×7+1=113 $ $ (3×7+1)×5+1=111 $ $ (5×7+1)×3+1=109 $ 由此 阅读全文
posted @ 2018-12-25 09:32 schrodingercatss 阅读(403) 评论(0) 推荐(0) 编辑
摘要: "题目传送门" 解题思路 本题是典型的贪心算法题,我们可以对每一个任务的时间按从小到大排序,使用优先队列来维护整体任务,优先队列的长度作为时间,当长度大于当前任务的长度时,比较当前任务的花费和队列顶端的花费大小,如果当前任务花费大于堆顶花费,则让堆顶元素pop,并减去对堆顶元素的值即可。 cpp i 阅读全文
posted @ 2018-12-25 09:24 schrodingercatss 阅读(393) 评论(0) 推荐(0) 编辑
摘要: "题目传送门" 解题思路 这道题是Johnson双流水线调度算法的基础题。 本题是要求一个加工顺序使得总的加工时间最少,而要使加工时间最少,就是让各车间的空闲时间最少。一旦A车间开始加工,便会不停地进行加工(我们不要去管车间是否能够一直生产,因为他们有三班,可以24时间不停地运转)。关键是B车间在生 阅读全文
posted @ 2018-12-25 09:19 schrodingercatss 阅读(392) 评论(0) 推荐(0) 编辑