[BZOJ 1029] JSOI 2007 建筑抢修 · 贪心+堆
这题很类似线段覆盖和工作安排,因此考虑用贪心,但是贪心肯定是会被卡的,所以考虑优化。
假设已经花费了now个单位时间,那么对于当前t号建筑,有两种情况:
1.now+t.cost
2.找到之前已经修过的建筑中,花费时间最多的p号建筑,如果p.cost>t.cost,那么再判断一下用t来替换p是否可行,即now+t.cost-p.cost
这个的意义就相当于线段覆盖中,把t和p分别看成两条线
原创
2017-07-23 16:17:30 ·
361 阅读 ·
0 评论