怎么说。。。倒是想得出貌似要用贪心,但就是想不出怎么贪心。。。
先按T2从小到大排序,然后依次判断能否维修:
若当前维修总时间+T1[i]<=T2[i]则维修;
若当前维修过的楼的MaxT1>T1[i]则让那个MaxT1的楼废弃,而当前楼维修。
接下来用优先队列弄就行。【第一次用STL的Priority Queue
怎么说。。。倒是想得出貌似要用贪心,但就是想不出怎么贪心。。。
先按T2从小到大排序,然后依次判断能否维修:
若当前维修总时间+T1[i]<=T2[i]则维修;
若当前维修过的楼的MaxT1>T1[i]则让那个MaxT1的楼废弃,而当前楼维修。
接下来用优先队列弄就行。【第一次用STL的Priority Queue