refresh的停車場

2021-07-16 22:09:43 字數 1780 閱讀 8833

refresh最近發了一筆橫財,開了一家停車場。由於土地有限,停車場內停車數量有限,但是要求進停車場的車輛過多。當停車場滿時,要進入的車輛會進入便道等待,最先進入便道的車輛會優先

進入停車場,而且停車場的結構要求只出去的車輛必須是停車場中最後進去的車輛。現告訴你停車場容量n以及命令數m,以及一些命令(add num 表示車牌號為num的車輛要進入停車場或便道,

del 表示停車場中出去了一輛車,out 表示便道最前面的車輛不再等待,放棄進入停車場)。假設便道內的車輛不超過1000000.

輸入為多組資料,每組資料首先輸入n和m(0< n,m <200000),接下來輸入m條命令。

輸入結束後,如果出現停車場內無車輛而出現del或者便道內無車輛而出現out,則輸出error,否則輸出停車場內的車輛,最後進入的最先輸出,無車輛不輸出。

2 6

add 18353364208

add 18353365550

add 18353365558

add 18353365559

delout

18353365558

#include #include #include #define stackmax 10000

#define stacknum 11111

typedef long long int elentype;

typedef struct

sqstack;

int initstack(sqstack &s)//棧的初始化;

void push(sqstack &s,elentype &e)//進棧;

*s.top++=e;

}int pop(sqstack &s)//出棧;

int stackempty(sqstack &s)//判斷棧是否為空棧;

void print(sqstack &s)//棧的元素的輸出;

}typedef long long int qelemtype;

typedef long long  int status;

typedef struct qnode

qnode, *queueptr;

typedef struct

linkqueue;

status initqueue (linkqueue &q)//隊的初始化;

status enqueuer(linkqueue &q, qelemtype &e)//進隊;

status dequeuel(linkqueue &q,qelemtype &e)//出隊;

int emptyqueue(linkqueue q)//判斷是否為空隊;

qelemtype queuelength(linkqueue q)//隊的長度『

return i;

}int main()

}if(strcmp(c,"out")==0)}}

if(flag==0)

printf("error\n");

else

print(s);//棧內元素的輸出;}}

#include #include #include #include #include #include using namespace std;

int main()

else if(minglin[0]=='d')}}

else if(minglin[0]=='o')

}if(t==1)

printf("error\n");

else}}

return 0;

}

refresh的停車場

題目鏈結 卡了好久,交了好多遍,總之各種原因,陣列記憶體大小,多組輸入,棧和佇列重置,以及演算法的一點點小問題。不過最後終於過了 refresh的停車場 該題需要棧與佇列的組合,停車場是棧,便道是佇列 停車場符合先進後出的原則,便道符合先進先出的原則,先進佇列的先進停車場 也先out,不再等待 in...

refresh的停車場

time limit 1000ms memory limit 65536k 有疑問?點這裡 refresh最近發了一筆橫財,開了一家停車場。由於土地有限,停車場內停車數量有限,但是要求進停車場的車輛過多。當停車場滿時,要進入的車輛會進入便道等待,最先進入便道的車輛會優先 進入停車場,而且停車場的結構...

refresh的停車場

refresh的停車場 time limit 1000ms memory limit 65536k refresh最近發了一筆橫財,開了一家停車場。由於土地有限,停車場內停車數量有限,但是要求進停車場的車輛過多。當停車場滿時,要進入的車輛會進入便道等待,最先進入便道的車輛會優先 進入停車場,而且停車...