Cod sursa(job #1065297)

Utilizator Andrei1998Andrei Constantinescu Andrei1998 Data 23 decembrie 2013 01:34:10
Problema Secventa 5 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.51 kb
#include <iostream>
#include <list>

using namespace std;

#define mod 666013
#define lint long long int

list<lint> h[mod];
list<lint> h2[mod];

list<lint>::iterator gaseste(lint x)
{
    int b=x%mod;
    list<lint>::iterator it;
    for(it=h[b].begin();it!=h[b].end();it++)
        if(*it==x)
            break;
    return it;
}

bool ex(lint x)
{
    int b=x%mod;
    list<lint>::iterator it=gaseste(x);
    if(x==h[b].end())
        return 0;
    return 1;
}

void add(lint x)
{
    if(ex(x))
        return;
    int b=x%mod;
    h[b].push_back(x);
}

void del(lint x)
{
    if(!ex(x))
        return;
    int b=x%mod;
    list<lint>::iterator it=gaseste(x);
    h[b].erase(it);
}
////////////////////////////

list<lint>::iterator gaseste2(lint x)
{
    int b=x%mod;
    list<lint>::iterator it;
    for(it=h2[b].begin();it!=h2[b].end();it++)
        if(*it==x)
            break;
    return it;
}

bool ex2(lint x)
{
    int b=x%mod;
    list<lint>::iterator it=gaseste(x);
    if(x==h2[b].end())
        return 0;
    return 1;
}

void add2(lint x)
{
    if(ex2(x))
        return;
    int b=x%mod;
    h2[b].push_back(x);
}

void del2(lint x)
{
    if(!ex2(x))
        return;
    int b=x%mod;
    list<lint>::iterator it=gaseste2(x);
    h2[b].erase(it);
}
int main()
{
    lint v[1048580];
    int n,i,l,u;
    cin>>n>>l>>u;

    for(i=1;i<=n;i++)
        cin>>v[i];
    int cu_l=1,cu_u=1;
    for(i=1;i<=n;i++)
    {

    }

    return 0;
}