noip2016 洛谷P2827 蚯蚓

2022-05-20 05:48:16 字數 742 閱讀 4606

這個題只知道可以用優先佇列去做,但是不知道正解想法,看到題解後恍然大悟,詳情請看**中間

#include#include

#include

#include

#include

using

namespace

std;

int n,m,q,u,v,t,q1[8000010],q2[8000010],q3[8000010

],h1,h2,h3,t1,t2,t3;

bool cmp(int a,int

b)inline

int pop(int

ti)inline

void push(int

x)/*

因為早分解的一定開始較大,所以他們分解出來的蚯蚓也一定會較大

所以我們可以開三個佇列,分別用於維護未分解的蚯蚓,分解後較大的蚯蚓和較小的蚯蚓

那麼每次所取的值,也一定在三個佇列之首中的乙個

我們記錄頭指標尾指標,他們除了作為指標也可以用於判斷時間(很好理解,除了第乙個佇列,其他都是按照加入佇列的時間來作為指標的)

這樣我們先都分解一遍,然後再從剩下兩個佇列裡面彈就行了(越靠近隊首的越大)

*/int

main()

cout

<<'\n'

;

for(int i=1;i<=m+n;i++)

cout

<<'\n'

;}

NOIP 2016 蚯蚓(洛谷 P2827)

本題中,我們將用符號 c 表示對c向下取整,例如 3.0 3.1 3.9 3。蛐蛐國最近蚯蚓成災了!隔壁跳蚤國的跳蚤也拿蚯蚓們沒辦法,蛐蛐國王只好去請神刀手來幫他們消滅蚯蚓。蛐蛐國裡現在共有n只蚯蚓 n為正整數 每只蚯蚓擁有長度,我們設第i只蚯蚓的長度為a i i 1,2,n 並保證所有的長度都是非...

NOIP2016蚯蚓(洛谷2827)

標籤 佇列,模擬 題目描述 本題中,我們將用符號 c 表示對c向下取整,例如 3.0 3.1 3.9 3。蛐蛐國最近蚯蚓成災了!隔壁跳蚤國的跳蚤也拿蚯蚓們沒辦法,蛐蛐國王只好去請神刀手來幫他們消滅蚯蚓。蛐蛐國裡現在共有n只蚯蚓 n為正整數 每只蚯蚓擁有長度,我們設第i只蚯蚓的長度為a i i 1,2...

洛谷P2827 蚯蚓

本題中,我們將用符號 lfloor c rfloor 表示對 c 向下取整,例如 lfloor 3.0 rfloor lfloor 3.1 rfloor lfloor 3.9 rfloor 3 蛐蛐國最近蚯蚓成災了!隔壁跳蚤國的跳蚤也拿蚯蚓們沒辦法,蛐蛐國王只好去請神刀手來幫他們消滅蚯蚓。蛐蛐國裡現...