Cod sursa(job #907847)

Utilizator VladMSBonta vlad valentin VladMS Data 8 martie 2013 13:33:28
Problema Cautare binara Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.82 kb
#include <fstream>
#include <algorithm>
#include <vector>
using namespace std;
int i,j,n,cod,m,rez,x;
vector <int> a;
vector <int>::iterator ii;
int main()
{
    ifstream fin("cautbin.in");
    ofstream fout("cautbin.out");
    fin>>n;
    for(i=1;i<=n;++i)
    {
        fin>>x;
        a.push_back(x);
    }
    fin>>m;
    for(i=1;i<=m;++i)
    {
        fin>>cod>>x;
        if(cod==0)
        {
            ii=upper_bound(a.begin(),a.end(),x);
            fout<<ii-a.begin()<<'\n';
        }
        else
        if(cod==1)
        {
            ii=upper_bound(a.begin(),a.end(),x);
            fout<<ii-a.begin()<<'\n';
        }
        else
        if(cod==2)
        {
            ii=lower_bound(a.begin(),a.end(),x);
                fout<<ii-a.begin()+1<<'\n';
        }
    }
    return 0;
}