Cod sursa(job #3359999)

Utilizator alexandracara5Caraman Nicole Alexandra alexandracara5 Data 7 iulie 2026 16:46:16
Problema Cautare binara Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.09 kb
#include <fstream>
using namespace std;
ifstream cin("cautbin.in");
ofstream cout("cautbin.out");
int v[1001];
int main()
{
    int n,i,val,st=1,dr,ok=0,x,m,mj,a,b;
    cin>>n>>x;
    for(i=1;i<=n;i++)
        cin>>v[i];
    cin>>m;
    for(i=1;i<=m;i++)
    {
        cin>>a>>b;
        val=b;
        dr=1+n;
        while(st<dr)
        {
            mj=(st+dr)/2;
            if(v[mj]<val)
                st=mj;
            else
                if(v[mj]>val)
                    dr=mj;
                else{
                    st=mj;
                    ok=1;
                    break;
                }
        }
        if(a==0)
        {
            if(ok==0)
                cout<<-1;
            else
                cout<<mj;
        }
        if(a==1)
        {
            if(ok==0)
                cout<<st;
            else
                cout<<mj;
        }
        if(a==2)
        {
            if(ok==0)
                cout<<dr;
            else
                cout<<mj;
        }
    }
    cin.close();
    cout.close();
    return 0;
}