Cod sursa(job #1032078)

Utilizator CostanMiriamCostan Miriam CostanMiriam Data 15 noiembrie 2013 18:52:58
Problema Dtcsu Scor 0
Compilator cpp Status done
Runda FMI No Stress 4 Marime 0.95 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin ("dtcsu.in");
ofstream fout ("dtcsu.out");

char s[100000000];
int v[1000000],x,n,i,m,a,ok,j,nr,p,u,mij;

int main () {
    n=0;
    for (x=1;x<=276997;x++){
        fin.get (s,1000000);
        fin.get();
        for(i=0;s[i]!=0 ;i++){

            if(s[i]>='0'&&s[i]<='9')
                x=x*10+s[i]-'0';
            else {
                v[++n]=x;
                x=0;
            }
        }
        v[++n]=x;
    }
    fin>>m;
    for (i=1;i<=m;i++) {
        fin>>a;
        p=1;u=n;ok=0;
        while (p<=u) {
            mij=(p+u)/2;
            if (v[mij]>a)
                u=mij-1;
            else
                if (v[mij]<a)
                    p=mij+1;
                else {
                    ok=1;
                    break;
                }
        }
        if (ok==1)
            nr++;
    }
    fout<<nr;

    return 0;
}