提出 #25583472


ソースコード 拡げる

#include "bits/stdc++.h"
using namespace std;
#define int long long
void solution() {
  multiset<pair<int, int>> s;
  int q;
  cin >> q;
  const int N = 2e9;
  int val;
  for (int i = N; i < N + q; i ++) {
    int t;
    cin >> t;
    if (t == 1) {
      int x;
      cin >> x;
      s.insert(make_pair(i, x));
    } else if (t == 2) {
      cout << s.begin()->second << "\n";
      s.erase(s.begin());
    } else {
      while (s.size() && s.rbegin()->first >= N) {
        val = s.rbegin()->second;
        s.erase(-- s.end());
        s.insert(make_pair(val, val));
      }
    }
  }
}
signed main() {
  ios_base::sync_with_stdio(0); cin.tie(0); int tc = 1;
#ifdef DEBUG
  freopen("input.txt", "r", stdin); 
#endif
  // cin >> tc; 
  while (tc --) { solution(); cout << "\n"; }
}

提出情報

提出日時
問題 E - Sorting Queries
ユーザ phattd
言語 C++ (GCC 9.2.1)
得点 500
コード長 817 Byte
結果 AC
実行時間 98 ms
メモリ 16124 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 500 / 500
結果
AC × 2
AC × 16
セット名 テストケース
Sample 00_sample_00.txt, 00_sample_01.txt
All 00_sample_00.txt, 00_sample_01.txt, 01_max_random_00.txt, 01_max_random_01.txt, 01_max_random_02.txt, 02_all_1_00.txt, 03_all_1_2_00.txt, 04_all_3_00.txt, 05_unordered_hack_00.txt, 05_unordered_hack_01.txt, 06_unsort_hack_00.txt, 06_unsort_hack_01.txt, 07_sort_hack_00.txt, 07_sort_hack_01.txt, 08_mixed_hack_00.txt, 08_mixed_hack_01.txt
ケース名 結果 実行時間 メモリ
00_sample_00.txt AC 6 ms 3668 KiB
00_sample_01.txt AC 3 ms 3492 KiB
01_max_random_00.txt AC 48 ms 3596 KiB
01_max_random_01.txt AC 42 ms 3696 KiB
01_max_random_02.txt AC 42 ms 3612 KiB
02_all_1_00.txt AC 85 ms 16124 KiB
03_all_1_2_00.txt AC 46 ms 3568 KiB
04_all_3_00.txt AC 15 ms 3560 KiB
05_unordered_hack_00.txt AC 58 ms 9836 KiB
05_unordered_hack_01.txt AC 59 ms 9840 KiB
06_unsort_hack_00.txt AC 87 ms 9856 KiB
06_unsort_hack_01.txt AC 88 ms 9832 KiB
07_sort_hack_00.txt AC 98 ms 9772 KiB
07_sort_hack_01.txt AC 95 ms 9868 KiB
08_mixed_hack_00.txt AC 59 ms 8512 KiB
08_mixed_hack_01.txt AC 59 ms 8636 KiB