Description小刚在玩JSOI提供的一个称之为“建筑抢修”的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落的入侵者。但是T部落的基地里已经有N个建筑设施受到了严重的损伤,如果不尽快修复的话,这些建筑设施将会完全毁坏。现在的情况是:T部落基地里只有一个修理工人,虽然他能瞬间到达任何一个...
分类:
Web程序 时间:
2015-12-05 15:45:48
阅读次数:
168
传送门:BZOJ1029还记得线段覆盖吗?我们将建筑物按Deadline排序,然后扫描排序后数组,如果当前建筑物可以被修建,则修建,否则,如果当前建筑物所用时间小于修过的建筑物最大时间,则放弃最大时间,改修它。
这个算法的正确性是显然的。
代码上的小细节见下:#include
#include
#include
#include <cstri...
分类:
其他好文 时间:
2015-08-15 09:08:29
阅读次数:
151
Description
小刚在玩JSOI提供的一个称之为“建筑抢修”的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落的入侵者。但是T部落的基地里已经有N个建筑设施受到了严重的损伤,如果不尽快修复的话,这些建筑设施将会完全毁坏。现在的情况是:T部落基地里只有一个修理工人,虽然他能瞬间到达任何一个建筑,但是修复每个建筑都需要一定的时间。同时,修理工人修理完一个建筑才能修理下一个建筑,不能...
分类:
Web程序 时间:
2015-08-14 15:43:17
阅读次数:
197
1029: [JSOI2007]建筑抢修Time Limit:4 SecMemory Limit:162 MBSubmit:2742Solved:1210[Submit][Status][Discuss]Description小刚在玩JSOI提供的一个称之为“建筑抢修”的电脑游戏:经过了一场激烈的战...
分类:
Web程序 时间:
2015-07-16 21:22:40
阅读次数:
153
题目大意:n个建筑需要抢修,第i个建筑需要T1时间抢修,必须在T2时间之前抢修完毕,求最多能抢修多少建筑
首先我们对T2排序 然后依次修理 但是这样贪心显然是不正确的 比如说这组数据:
5
10 10
10 20
2 21
2 21
2 21
贪心只能修理前两个,而实际上最多可以修理4个
于是我们考虑修正贪心算法
比如说这组数据,当我们枚举到3的时候,虽然已经无法修理更多了...
分类:
Web程序 时间:
2014-10-28 17:51:59
阅读次数:
256
按完成时限排序,一个个修复。若当前建筑花费时间+之前花费的总时间不超过时限,则ans++;否则,从之前已修复的建筑中挑一个耗时最多的,与当前建筑比较,若当前建筑更优,则更新ans。 1 #include 2 #include 3 #include 4 using namespace std; 5 p...
分类:
Web程序 时间:
2014-09-13 11:50:45
阅读次数:
167