Mai intai trebuie sa te autentifici.

Cod sursa(job #2025406)

Utilizator EricEric Vilcu Eric Data 22 septembrie 2017 18:00:49
Problema Cautare binara Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <iostream>
#include <fstream>
using namespace std;
unsigned int i,j,m,n,a[10002],t,r,k;
ifstream f("cautbin.in");
ofstream g("cautbin.out");
int caut()
{
    i=1;j=n;
    while (i!=j-1)
    {
        k=(i+j)/2;
        if(a[k]>r)j=k;
        else i=k;
    }
    return i;
}
int main()
{
    f>>n;
    for(i=1;i<=n;++i)f>>a[i];
    f>>m;
    for(;m>0;--m)
    {
        f>>t>>r;
        if(t==2)--r;
        k=caut();
        if(t==0){if(a[i]==r)g<<i;
                else g<<-1;}
        else if(t==1)g<<i;
        else g<<j;
        g<<'\n';
    }
}