Cod sursa(job #1902514)

Utilizator maria_neagoieMaria Neagoie maria_neagoie Data 4 martie 2017 17:18:17
Problema Cautare binara Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream in("cautbin.in");
ofstream out("cautbin.out");
int v[100005];
int main()
{
    int n,i,x,m,tip,p;
    in>>n;
    for(i=1;i<=n;i++)
        in>>v[i];
    in>>m;
    for(i=1;i<=m;i++)
    {
        in>>tip>>x;
        if(tip==0)
        {
            p=upper_bound(v+1,v+n+1,x)-v-1;
            if(v[p]==x)
                out<<p<<'\n';
            else
                out<<-1<<'\n';
        }
        if(tip==1)
            out<<upper_bound(v+1,v+n+1,x)-v-1<<'\n';
        if(tip==2)
            out<<lower_bound(v+1,v+n+1,x)-v<<'\n';
    }
    return 0;
}