天天看点

POJ 3614 Sunscreen 优先队列

题目大意:

给你一些母牛,母牛有能容忍日光浴的最小和最大光照强度。每只母牛可以涂一次spf,spf可以将母牛可以承受的光照强度固定在某个地方。现在给你母牛的最小和最大值和不同的spf的光照强度及其数量,求最多可以有多少母牛享受日光浴?

思路:

优先队列。

先按母牛最小承受的排好,然后spf的值也从小到大。

接下来用优先队列(栈顶为最小的)。对于每个spf,如果一只母牛的最小值小于等于spf则将其最大值入队。(贪心。。如两个母牛一只【1,4】一只【1,5】那么同样情况下选【1,4】不会差于【1,5】)

详见代码。

继续阅读