POJ 3614 優先佇列

2021-10-04 10:46:33 字數 917 閱讀 6207

題意

傳送門 poj 3614

對防曬霜按 spf 公升序排序,每次處理當前防曬霜,就將所有 spf 小於等於該 spf 值的牛入隊,此時入隊的牛也是其後處理的防曬霜的可能塗抹物件。為了使防曬的牛數量最大,當前處理的防曬霜選擇優先佇列中 spf 最大值最小的牛進行塗抹。

#include

#include

#include

#include

#include

#include

#define min(a,b) (((a) < (b)) ? (a) : (b))

#define max(a,b) (((a) > (b)) ? (a) : (b))

#define abs(x) ((x) < 0 ? -(x) : (x))

#define inf 0x3f3f3f3f

#define delta 0.85

#define eps 1e-3

#define pi 3.14159265358979323846

#define max_c 2505

#define max_l 2505

using

namespace std;

typedef pair<

int,

int> p;

int c, l;

p cow[max_c]

, lon[max_l]

;int

main()

while

(!que.

empty()

&& lon[i]

.second >0)

}printf

("%d\n"

, res);}

return0;

}

POJ3614與優先佇列

優先佇列這個博主講的比較全 題意 奶牛曬太陽,有下限和上限,要保證曬到上下限之間,每瓶防曬霜可以固定一頭奶牛曬到乙個固定值,求最多幾頭奶牛可以達到要求 要點 先把奶牛按照最小值從小到大排序,在把防曬霜從小到大排序,從最小的防曬霜列舉,如果大於奶牛的最小值就把奶牛的最大值放入優先數列 從小到大 這樣的...

POJ3614 貪心 優先佇列

題意 m頭牛每頭牛有minspf和maxspf,n種spf為spf i 的防曬霜每種l i 瓶,盡可能給數量多的牛塗防曬霜,每頭牛最多塗一瓶。思路 貪心想法,實現是每次取出minspf spf i 的牛加入優先佇列中,優先佇列以牛的maxspf為優先,給maxspf spf i 且maxspf從小開...

POJ 3614 Sunscreen 優先佇列

題目大意 給你一些母牛,母牛有能容忍日光浴的最小和最大光照強度。每只母牛可以塗一次spf,spf可以將母牛可以承受的光照強度固定在某個地方。現在給你母牛的最小和最大值和不同的spf的光照強度及其數量,求最多可以有多少母牛享受日光浴?思路 優先佇列。先按母牛最小承受的排好,然後spf的值也從小到大。接...