Cod sursa(job #1582201)

Utilizator RatiuElenaRatiu Elena-Daniela RatiuElena Data 27 ianuarie 2016 18:48:17
Problema Cautare binara Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 1.28 kb
    #include <iostream>
    #include <fstream>
    using namespace std;
    int v[100000],m;
    int main()
    {   int n,i,x,c,j,ok;
        ifstream f("cautbin.in");
        ofstream g("cautbin.out");
        f>>n;
        for(i=1;i<=n;i++)
            f>>v[i];
        f>>m;
        for(j=1;j<=m;j++){
            f>>c;f>>x;
            if (c==0){
                ok=0;
                i=n;
                while (i>=1 &&ok==0){
                    if(v[i]==x)
                        ok=1;
                    else
                        i--;}
                    }
            if (c==1){
                ok=0;i=n;
                while (i>=1 &&ok==0){
                    if(v[i]<=x)
                        ok=1;
                    else
                        i--;}
                    }
            if(c==2){
                ok=0;i=1;
                while (i<=n &&ok==0){
                    if(v[i]>=x)
                        ok=1;
                    else
                        i++;}
                }
            if(c==0)
                if (ok==0)
                    g<<"-1"<<"\n";

                else
                    g<<i<<"\n";
            else g<<i<<"\n";
            }
        f.close();
        g.close();
        return 0;
    }