Advertisement
Guest User

Untitled

a guest
Oct 28th, 2016
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.21 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. using namespace std;
  4. int a[100011],n,m,k,mn,s,l,q,p[100011],o[100011],u,i;
  5. //p[i]- locul persoanei ce a rezervat locul i;
  6. //o[i]-locul rezervat al persoanei ce ocupa locul i;
  7. //a[i]=0=>loc liber;altfel ocupat;
  8. char c;
  9.  
  10. ifstream f("input.txt");
  11. ofstream g("output.txt");
  12. int main()
  13. {
  14.     f>>n>>m;
  15.     while(m--)
  16.     {
  17.         f>>c>>q;
  18.         if(c=='b')
  19.         {
  20.             if(mn<=q)
  21.             {
  22.                 a[mn]=1;
  23.                 o[mn]=q;
  24.                 p[q]=mn;
  25.                 i=mn+1;
  26.                 while(a[i])
  27.                     ++i;
  28.                 mn=i;
  29.             }
  30.             else
  31.             {
  32.                 while(a[q]>0)
  33.                 {
  34.                     ++s;
  35.                     p[q]=q;
  36.                     u=o[q];
  37.                     o[q]=q;
  38.                     q=u;
  39.                 }
  40.                 a[q]=1;
  41.                 if(q==mn)
  42.                 {
  43.                     i=mn+1;
  44.                     while(a[i])
  45.                         ++i;
  46.                     mn=i;
  47.                 }
  48.             }
  49.         }
  50.         else
  51.         {
  52.             a[p[q]]=0;
  53.             mn=min(mn,p[q]);
  54.         }
  55.     }
  56.     g<<s;
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement