hdu_看病要排队

Posted bxynlbyx

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hdu_看病要排队相关的知识,希望对你有一定的参考价值。

 1 #include<iostream>
 2 #include<string>
 3 #include<queue>
 4 using namespace std;
 5 int k;
 6 struct sortt{
 7     int pri;
 8     int id;
 9     friend bool operator<(sortt s1,sortt s2){
10         if(s1.pri==s2.pri) return s1.id>s2.id;
11         else 
12         return s1.pri<s2.pri;
13     }
14 };
15 int main(){
16     int n;
17     int a,b;
18     sortt sor;
19     string str;
20     while(cin>>n){
21         priority_queue<sortt> q[4];
22         k=0;
23         while(n--){
24             cin>>str;
25             if(str=="OUT"){
26                 cin>>a;
27                 if(q[a].empty()==true)
28                 cout<<"EMPTY"<<endl;
29                 else{
30                     sor=q[a].top();
31                     q[a].pop();
32                     cout<<sor.id<<endl;
33                 }
34             }
35             else if(str=="IN"){
36                 cin>>a>>b;
37                 sor.id=++k;
38                 sor.pri=b;
39                 q[a].push(sor);
40             }
41         }
42     }
43     return 0;
44 } 

 

以上是关于hdu_看病要排队的主要内容,如果未能解决你的问题,请参考以下文章

hdu1873看病要排队

hdu1873 看病要排队(结构体优先队列)

HDU - 1873 看病要排队(优先队列)

HDU 1873 看病要排队 —— priority_queue 的使用

hdu 1873 看病要排队(优先级队列)

hdu1873(看病要排队)循环队列害死我了