Cod sursa(job #2171035)

Utilizator usureluflorianUsurelu Florian-Robert usureluflorian Data 15 martie 2018 10:56:46
Problema Hashuri Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.95 kb
#include <fstream>
#include <vector>
using namespace std;
ifstream f ("hashuri.in");
ofstream g ("hashuri.out");
const int mod=666013;
vector <int> v[mod+1];
int u,m,n,a,tip;
inline int caut(int x)
{
      int t=x%mod;
      for(int i=0;i<v[t].size();++i) if(v[t][i]==x) return i+1;
      return 0;
}
void add(int x)
{
      int t=x%mod;
      if(caut(x)) return;
      v[t].push_back(x);
}
void sterge(int x)
{
      int t=x%mod;
      u=caut(x);
      if(!u) return;
      --u;
      m=v[t].size()-1;
      swap(v[t][u],v[t][m]);
      v[t].pop_back();
}
int main()
{
      f>>n;
      while(n--)
      {
            f>>tip>>a;
            if(tip==1)
            {
                 add(a);
                 continue;
            }
            if(tip==2)
            {
                  sterge(a);
            }
            else
            {
                 g<<(caut(a)>0)<<'\n';
            }
      }
      return 0;
}