acm程序设计书中题目第s题解析
2017-03-16 22:11
218 查看
这个题的题意大概是当输入"PUT"时,输入三项内容,前两项为该优先队列的内容,最后一项是s的权值,将优先队列按权值从小到大的顺序排列,当输入“GET”时,若优先队列中有内容,则输出队头元素,反之,输出给定字符串。
思路:这是个简单的优先队列的应用题,难点在于重载运算符,完成重载后,按题意压入,输出元素即可;
代码:
思路:这是个简单的优先队列的应用题,难点在于重载运算符,完成重载后,按题意压入,输出元素即可;
代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
#include<iostream> #include<queue> #include<string> using namespace std; struct node { int x,y; string a; const bool operator<(const node &b)const{ return y>b.y; } }; struct node c; int main() { priority_queue<node>s; int i,j,k,l,m,n,x,y; string b; while (cin>>b) { if (b=="GET"&&s.empty())cout<<"EMPTY QUEUE!"<<endl; else if (b=="GET"&&!s.empty()) { cout<<s.top().a<<" "<<s.top().x<<endl; s.pop(); } else if (b=="PUT") { cin>>c.a>>c.x>>c.y; s.push(c); } } }
相关文章推荐
- acm程序设计书中题目第e题解析
- acm程序设计书中题目第v题解析
- ACM之2000——2050题目答案及解析
- ACM程序设计书中题目--U(寻找第n个能被3或5整除的数)
- ACM程序设计 书中题目L
- ACM程序设计 书中题目N(翻转数字)
- ACM程序设计 书中题目M
- 典型算法与ACM题目解析(1)—寻找最大流的标号法
- 第三十届ACM/ICPC 世界总决赛题目解析
- ACM程序设计书中题目N
- ACM程序设计书中题目M
- ACM程序设计书中题目--k (移动砖块)
- 2012年"浪潮杯"山东省第三届ACM大学生程序设计竞赛 The Best Seat in ACM Contest 看清题目后,我是真哭了。。。。。
- 关于acm程序设计书中题目 #B第二题
- ACM程序设计书中题目--Y(输入字符串输出每个数字连续出现的个数及数字)
- ACM程序设计书中题目O
- 典型算法与ACM题目解析(3)—记忆化搜索的应用
- 第三十届ACM/ICPC 世界总决赛题目解析
- 第三十届ACM/ICPC 世界总决赛题目解析
- ACM程序设计 书中题目J