Advertisement
Guest User

Untitled

a guest
Dec 15th, 2019
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.46 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int main(){
  4.  
  5. int nc,ns;
  6. scanf("%d %d",&nc,&ns);
  7. int c[ns],s[ns];
  8. for(int i=0;i<ns;i++){
  9. scanf("%d %d",&c[i],&s[i]);
  10. }
  11.  
  12. vector <int> v,k;
  13. bool check=true;
  14. while(check){
  15. char a;
  16. scanf(" %c",&a);
  17. if(a=='X'){
  18. check=false;
  19. break;
  20. }
  21. else if( a=='D' && v.size()>0){//print->erase
  22. printf("%d\n",v[0]);
  23. v.erase(v.begin()+0);
  24. k.erase(k.begin()+0);
  25. }
  26. else if( a=='E'){
  27. int num,cls;//cls=class
  28. scanf("%d",&num);
  29.  
  30. //find class
  31. for(int i=0;i<ns;i++){
  32. if(s[i]==num && c[i]!=0){cls=c[i];c[i]=0;}
  33. }
  34.  
  35. //in line
  36. if(v.size()==0) {
  37. v.push_back(num);
  38. k.push_back(cls);
  39. }
  40. else {
  41. for(int i=0;i<v.size();i++){
  42. if(k[i]==cls && k[i+1]!=cls){//insert
  43. v.insert(v.begin()+i+1,num);
  44. k.insert(k.begin()+i+1,cls);
  45. break;
  46. }
  47. else if(i==k.size()-1){
  48. v.push_back(num);
  49. k.push_back(cls);
  50. break;
  51. }
  52. }
  53. }
  54. }
  55. }
  56.  
  57. printf("0");
  58.  
  59. return 0;
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement