A. NanoJudge的救赎:队列大作战

    传统题 1000ms 256MiB

NanoJudge的救赎:队列大作战

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目名称:《NanoJudge的救赎:队列大作战》


题目描述

NanoJudge 前几天突然炸成了烟花🎇!因为一群程序员在深夜疯狂提交「Hello World」的 114514 种写法。现在系统终于被修好了(管理员用 3 桶泡面和 12 杯咖啡抢救回了代码),但积压的提交记录形成了数据洪流💦!

作为 NanoJudge 的守护者,你必须编写程序处理这些堆积如山的提交。每个提交有一个崩溃前时间戳暴躁值(程序员等待时的怒气指数,怒气越高越要优先处理)。规则如下:

  1. 按批次处理:每次选择当前队列中暴躁值最高的提交
  2. 同暴躁值则按时间顺序处理(时间戳小的先处理)
  3. 处理过的提交会从队列消失

请输出最终处理顺序,否则程序员们会把管理员的新键盘也吃掉!⌨️🔥


输入格式

  • 第一行整数 nn,表示提交总数
  • 接下来 nn 行,每行两个整数 t,pt, p,分别表示时间戳和暴躁值0t1e91p1e9(0 ≤ t ≤ 1e9,1 ≤ p ≤ 1e9)

输出格式

  • 一行整数,按处理顺序输出各提交的时间戳

样例输入

3
100 5
200 5
300 3

样例输出

100 200 300

样例解释

前两个提交暴躁值相同,按时间顺序处理,最后处理暴躁值最低的


数据范围

  • 对于 100% 的数据,1n1e51 ≤ n ≤ 1e5
  • 保证时间戳唯一

提示

  • 优先队列需要自定义比较规则
  • 时间戳是系统崩溃前的提交时间,不是崩溃后的时间哦(毕竟那时候系统都炸成薯片了)

终极嘲讽(隐藏提示)

如果你用冒泡排序——恭喜你,NanoJudge 会再次爆炸,而你将成为程序员们的公敌!💣


快来用代码拯救这个可怜的OJ吧!🦸♂️

NanoJudge月赛——5月

未参加
状态
已结束
规则
乐多
题目
4
开始于
2025-5-6 19:00
结束于
2025-6-1 0:00
持续时间
605 小时
主持人
参赛人数
8