C++
1#include <bits/stdc++.h> 2using namespace std; 3#define ll long long 4#define ld long double 5#define rep(i,a,n) for (ll i = a;i<(n);++i) 6#define all(v) v.begin(),v.end() 7#define pu(n) push_back(n) 8/*--------------------------------------------*/ 9int main(){ 10 ll q;cin>>q; 11 ll b; 12 vector<ll>rnt; rnt.pu(0); 13 ll ka=0; 14 priority_queue<pair<ll,ll>,vector<pair<ll,ll>>,greater<ll>>x; 15 rep(i,0,q){ 16 ll a;cin>>a; 17 if(a==1){ 18 cin>>b;x.push(make_pair(b,ka)); 19 } 20 if(a==2){ 21 cin>>b;rnt.pu(rnt[ka]+b);ka++; 22 } 23 if(a==3){ 24 auto e=x.top(); 25 ll bi=e.first;ll r=e.second;x.pop(); 26 ll cnt=rnt[rnt.size()-1]-rnt[r]; 27 28 cout<<bi+cnt<<endl; 29 } 30 } 31 return 0; 32}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/08/03 10:36