7-26 Windows消息队列(25 分)

消息队列是Windows系统的基础。对于每个进程,系统维护一个消息队列。如果在进程中有特定事件发生,如点击鼠标、文字改变等,系统将把这个消息加到队列当中。同时,如果队列不是空的,这一进程循环地从队列中按照优先级获取消息。请注意优先级值低意味着优先级高。请编辑程序模拟消息队列,将消息加到队列中以及从队列中获取消息。

输入格式:

输入首先给出正整数N(≤10​5​​),随后N行,每行给出一个指令——GETPUT,分别表示从队列中取出消息或将消息添加到队列中。如果指令是PUT,后面就有一个消息名称、以及一个正整数表示消息的优先级,此数越小表示优先级越高。消息名称是长度不超过10个字符且不含空格的字符串;题目保证队列中消息的优先级无重复,且输入至少有一个GET

输出格式:

对于每个GET指令,在一行中输出消息队列中优先级最高的消息的名称和参数。如果消息队列中没有消息,输出EMPTY QUEUE!。对于PUT指令则没有输出。

输入样例:

9
PUT msg1 5
PUT msg2 4
GET
PUT msg3 2
PUT msg4 4
GET
GET
GET
GET

输出样例:

msg2
msg3
msg4
msg1
EMPTY QUEUE!

思路:大家好好吃饭,不要撑着,也不要饿着。完了,欠的题有点儿多了

最新文章

  1. C++ 编译报错
  2. ContentProvider官方教程(3)ContentResolver查询、遍历 示例
  3. 无需图片,使用CSS3实现圆角按钮[转]
  4. HTML5 图片上传预览
  5. 科研论文提交流程与常见问题(EDAS 系统提交)
  6. Berkeley DB 使用
  7. Mac shell笔记
  8. Python系列之 - 面向对象(1)
  9. mysqldump+系统计划任务定时备份MySql数据
  10. [Swift]LeetCode1034.边框着色 | Coloring A Border
  11. [ubuntu]apt-get update突然出现arm package找不到
  12. python3 里安装cv2
  13. Javascript高级编程学习笔记(82)—— 富文本操作(2)
  14. 【节点-添加标签】【节点-删除标签】【显示年-月-日-星期】【math算数】【正则表达式】
  15. Android studio 怎么使用单元测试(不需要device)
  16. Postman Google浏览器离线安装Postman插件
  17. unbuntu 安装python包提示E: Unable to locate package python-timeout
  18. 使用 IntraWeb (1) - 先测试如何部署为 Asp.Net 的应用
  19. eclipse 创建聚合maven项目
  20. spiral-matrix-ii &i 生成顺时针序列

热门文章

  1. 关于js-cookie使用出现兼容性问题以及js-cookie的如何使用
  2. Ruby on Rails5 直接的路径无效问题
  3. MySQL基础 — 详细安装
  4. [App Store Connect帮助]四、添加 App 图标、App 预览和屏幕快照(6)设置 App 预览海报帧
  5. VBNET AutoCAD Activex 切换图层为当前图层失效
  6. open_basedir 报错
  7. 372 Super Pow 超级次方
  8. java简单打印金字塔(案例)
  9. RabbitMQ指南之四:路由(Routing)和直连交换机(Direct Exchange)
  10. 对socket的理解