FZU1894 志願者選拔(佇列) TLE

2021-07-03 18:06:41 字數 2039 閱讀 3074

problem 1894 志願者選拔

世博會馬上就要開幕了,福州大學組織了一次志願者選拔活動。

參加志願者選拔的同學們排隊接受面試官們的面試。參加面試的同學們按照先來先面試並且先結束的原則接受面試官們的考查。

面試中每個人的人品是主要考查物件之一。(提高人品的方法有扶老奶奶過街,不闖紅燈等)

作為主面試官的john想知道當前正在接受面試的同學隊伍中人品值最高的是多少。於是他請你幫忙編寫乙個程式來計算。

輸入資料第一行為一整數t,表示有t組輸入資料。

每組資料第一行為」start」,表示面試開始

接下來的資料中有三種情況:

輸入含義1

c name rp_value

名字為name的人品值為rp_value的同學加入面試隊伍。(名字長度不大於5,0 <= rp_value <= 1,000,000,000)2g

排在面試隊伍最前面的同學面試結束離開考場。3q

主面試官john想知道當前正在接受面試的隊伍中人品最高的值是多少。

最後一行為」end」,表示所有的面試結束,面試的同學們可以依次離開了。

所有參加面試的同學總人數不超過1,000,000

對於每個詢問q,輸出當前正在接受面試的隊伍中人品最高的值,如果當前沒有人正在接受面試則輸出-1。

2 start

c tiny

1000000000

c lina 0 q

g qend

start q

c ccq 200

c cxw 100 q

g qc wzc 500 q

end1000000000 0

-1200

100500

資料較大建議使用scanf,printf 不推薦使用stl福州大學第七屆程式設計競賽

剛學佇列,單調佇列還不太清楚,寫了個普通的佇列,沒有排序,輸出的時候來排序,結果果然tle了,不過也算用佇列寫了點東西。至少sample都過了 。。

#include#includeusing namespace std;

int n;//幾個隊伍

int num = 0;//可變的下標用來讀入資料

int front = 0;//隊頭 必須定義為全域性變數

int rear = 0;//隊尾 同上

const int sz = 100;//字串長度

struct queueq[100005];//直接定義乙個陣列的形式就不用寫規矩的函式了

int getmax(queue* q, int front, int rear)//警察叔叔 就是它讓我超時了

return max;

}void init()//判斷另乙個佇列先進行的初始化,所修改的變數均為全域性變數

int main()

if(judge[0] == 'c')

else if(judge[0] == 'q')

else if(judge[0] == 'g')

front ++;//每齣列乙個人,隊頭往後推1個

else printf("error\n");//測試用

}}

下午又參照著碼了一遍

#includeconst int sz = 10;

const int sum = 100000;

struct queueq[100005];

int front, rear;

int insert(long long rp, int index)

void init()

int main()

else if(s[0] == 'g')

else if(s[0] == 'q')

}else if(s[0] == 'e')

else if(s[0] == 's')

}}}

特別注意的是初始化的時候 rear = -1,front = 0 才能避免很多麻煩,我參照de**用rear = front = 0,以後各種front + 1,看起來很麻煩

FZU1894 志願者選拔

世博會馬上就要開幕了,福州大學組織了一次志願者選拔活動。參加志願者選拔的同學們排隊接受面試官們的面試。參加面試的同學們按照先來先面試並且先結束的原則接受面試官們的考查。面試中每個人的人品是主要考查物件之一。提高人品的方法有扶老奶奶過街,不闖紅燈等 作為主面試官的john想知道當前正在接受面試的同學隊...

fzu 1894 志願者選拔(單調佇列)

problem 1894 志願者選拔 世博會馬上就要開幕了,福州大學組織了一次志願者選拔活動。參加志願者選拔的同學們排隊接受面試官們的面試。參加面試的同學們按照先來先面試並且先結束的原則接受面試官們的考查。面試中每個人的人品是主要考查物件之一。提高人品的方法有扶老奶奶過街,不闖紅燈等 作為主面試官的...

解題報告 之 FZU 1894 志願者選拔

description 世博會馬上就要開幕了,福州大學組織了一次志願者選拔活動。參加志願者選拔的同學們排隊接受面試官們的面試。參加面試的同學們按照先來先面試並且先結束的原則接受面試官們的考查。面試中每個人的人品是主要考查物件之一。提高人品的方法有扶老奶奶過街,不闖紅燈等 作為主面試官的john想知道...