fork(1) download
  1. #include<bits/stdc++.h>
  2.  
  3. using namespace std;
  4. set<int>f[7];
  5. set<int>::iterator it;
  6. set<int>::iterator ite;
  7. int main(){
  8. int n,m,i,a,b,ans = 0;
  9. cin >> n >> m;
  10. for(i = 1;i <= n;i++){
  11. cin >> a >> b;
  12. it = f[a].end();
  13. for(ite = f[a].begin();ite != f[a].end();ite++){
  14. cout << *ite << endl;
  15. }
  16. if(f[a].empty() == true){
  17. ans++;
  18. f[a].insert(b);
  19. continue;
  20. }
  21. for(ite = f[a].begin();ite != f[a].end();ite++){
  22. cout << *ite << endl;
  23. }
  24. cout << *it;
  25. if(*it < b){
  26. if(b == 4) cout << *it << b << endl << endl << endl;
  27. f[a].insert(b);
  28. ans++;
  29. continue;
  30. }
  31. if(*it == b){
  32. if(b == 4) cout << *it << endl << endl << endl << endl;
  33. continue;
  34. }
  35. it = f[a].upper_bound(b);
  36. cout << *it;
  37. for(ite = f[a].end();ite != it;ite--){
  38. f[a].erase(ite);
  39. ans++;
  40. }
  41. f[a].erase(it,f[a].end());
  42. if(f[a].empty() == true){
  43. ans++;
  44. f[a].insert(b);
  45. continue;
  46. }
  47. it = f[a].end();
  48. if(*it == b){
  49. continue;
  50. }
  51. ans++;
  52. f[a].insert(b);
  53. }
  54. cout << ans
  55. ;
  56. }
Success #stdin #stdout 0.01s 5508KB
stdin
7 15
1 5 
2 3 
2 5 
2 7 
2 4 
1 5 
1 3 
stdout
3
3
13
5
3
5
23
5
7
3
5
7
334


5
5
15
5
17