結果

問題 No.649 ここでちょっとQK!
ユーザー task4233
提出日時 2018-02-22 20:13:14
言語 C++11(廃止可能性あり)
(gcc 13.3.0)
結果
TLE  
実行時間 -
コード長 939 bytes
コンパイル時間 1,349 ms
コンパイル使用メモリ 163,552 KB
実行使用メモリ 10,496 KB
最終ジャッジ日時 2024-10-02 10:46:01
合計ジャッジ時間 6,741 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample -- * 4
other AC * 4 TLE * 1 -- * 27
権限があれば一括ダウンロードができます

ソースコード

diff #

// ------------------------------------
// Date:2018/ 2/22
// Problem:No.649 Level3 ここでちょっとQK! 0649.cpp
//
// ------------------------------------

#include <bits/stdc++.h>

using namespace std;

#define EACH(i,a) for (auto&& i : a)
#define FOR(i,a,b) for(int i=(int)a;i<(int)b;++i)
#define RFOR(i,a,b) for(int i=(int)b-1;i>=(int)a;--i)
#define REP(i,n) FOR(i,0,n)
#define RREP(i,n) RFOR(i,0,n)
#define ALL(a) (a).begin(),(a).end()

using ll = long long;

int main()
{
  int Q,K,num;
  ll v,max = 0;
  vector<ll> S;
  cin >> Q >> K;
  REP(i,Q) {
    cin >> num;
    if (num == 1) {
      cin >> v;
      max = std::max(v,max);
      S.emplace_back(v);
      if (max != v) sort(ALL(S));
    } else {
      if (S.size() < K) {
        cout << -1 << endl;
      } else {
        cout << S[K-1] << endl;
        if (S.size() != K-1) S[K-1] = S.back();
        S.pop_back();
        sort(ALL(S));
      }
    }
  }
  return 0;
}

0