Cod sursa(job #1127195)

Utilizator RoPaulPersa Paul RoPaul Data 27 februarie 2014 11:34:28
Problema Cautare binara Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include<fstream>
#include<algorithm>
using namespace std;
int n,m,i,v[100007],t,x,y;
 
ifstream fi("cautbin.in");
ofstream fo("cautbin.out");
 
int main()
{
    fi>>n;
    for(i=1;i<=n;i++)
		fi>>v[i];
    fi>>m;
    for(i=1;i<=m;i++)
    {
        fi>>t>>x;
        if(t==2)
        {
            y=lower_bound(v+1,v+n+1,x)-v;
        }
        else
        {
            y=upper_bound(v+1,v+n+1,x)-v-1;
            if(v[y]!=x && !t)y=-1;
        }
 
        fo<<y<<'\n';
    }
	fi.close();
	fo.close();
    return 0;
}