fork download
  1. //Abhishek Bansal
  2. #include<bits/stdc++.h>
  3. #include<assert.h>
  4. #define PB push_back
  5. #define MP make_pair
  6. #define F first
  7. #define S second
  8. #define SZ(a) (int)(a.size())
  9. #define SET(a,b) memset(a,b,sizeof(a))
  10. #define LET(x,a) __typeof(a) x(a)
  11. #define TR(v,it) for( LET(it,v.begin()) ; it != v.end() ; it++)
  12. #define loop(a,b) for(int i=a;i<b;i++)
  13. #define si(n) scanf("%d",&n)
  14. #define sll(n) scanf("%lld",&n)
  15. #define sortv(a) sort(a.begin(),a.end())
  16. #define all(a) a.begin(),a.end()
  17. #define DRT() int t; cin>>t; while(t--)
  18. using namespace std;
  19. typedef long long int lli;
  20. typedef pair<int,int> ii;
  21. typedef vector<int> vi;
  22. typedef vector< vi > vvi;
  23. typedef vector< ii > vii;
  24. int main(){
  25. priority_queue<int> max;
  26. priority_queue<int, vi, greater<int> > min;
  27. int N,x,op,s=0;
  28. si(N);
  29. loop(1,N+1){
  30. si(op);
  31. if(op==1){
  32. si(x);
  33. s++;
  34. if(s%3!=0){
  35. if(min.empty()||x<=min.top()) max.push(x);
  36. else{
  37. max.push(min.top());
  38. min.pop();
  39. min.push(x);
  40. }
  41. }
  42. else{
  43. if(x>=max.top()) min.push(x);
  44. else{
  45. min.push(max.top());
  46. max.pop();
  47. max.push(x);
  48. }
  49. }
  50. }
  51. else if(op==2){
  52. if(!min.empty())
  53. cout<<min.top()<<endl;
  54. else
  55. cout<<"No reviews yet"<<endl;
  56. }
  57. }
  58. return 0;
  59. }
  60.  
Success #stdin #stdout 0s 3100KB
stdin
Standard input is empty
stdout
Standard output is empty