SPOJ 417 The lazy programmer(优先队列)
题目链接:点击打开链接
思路:一开始一直在想, 对于当前的一个任务i,他到底应该花费多少合适, 因为会影响后面的决策。 后来才想明白一件事, 对于当前这个任务, 减少他的时间和减少之前任意一个任务的时间是等价的, 那么我们当然优先减少那些a比较大的。 如果当前这个任务无法完成, 那么就在之前的所有任务中找a尽量大的来减少时间。 显然, 是一定有解的。
细节参见代码:
#include
原创
2016-07-04 21:27:36 ·
1498 阅读 ·
0 评论