Cod sursa(job #1586841)

Utilizator RadduFMI Dinu Radu Raddu Data 1 februarie 2016 17:55:12
Problema Cautare binara Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("cautbin.in");
ofstream g("cautbin.out");
 int n,q,a[100005];

int main()
{ int i,t,x,p;
    f>>n;
  for(i=1;i<=n;i++)
   f>>a[i];

   f>>q;
  for(i=1;i<=q;i++)
   { f>>t>>x;
      if (t==0)
      { p=upper_bound(a+1,a+n+1,x)-a-1;
        if (a[p]!=x) p=-1;
      }
      if (t==1) p=upper_bound(a+1,a+n+1,x)-a-1;
      if (t==2) p=lower_bound(a+1,a+n+1,x)-a;
    g<<p<<"\n";
   }

  return 0;
}