Cod sursa(job #2866964)

Utilizator Edy_13Taparlan Eduard Edy_13 Data 10 martie 2022 09:17:53
Problema Cautare binara Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.69 kb
#include <bits/stdc++.h>
using namespace std;
ifstream f("cautbin.in"); ofstream g("cautbin.out");
int n,m,a[100005];
int main()
{   f>>n;
    for(int i = 1; i <= n; i++) f>> a[i];
    f>> m;
    while (m--)
    {   int op, x;
        f>> op >> x;
        switch (op)
        {   case 0:
            {   int p = binary_search(a + 1, a + n + 1, x);
                if (p) g<<upper_bound(a+1,a+n+1,x)-a-1 << "\n"; else g<<"-1\n";
                break;
            }
            case 1: {   g<< upper_bound(a + 1, a + n + 1, x) - a - 1 << "\n"; break;}
            case 2: {   g<< lower_bound(a + 1, a + n + 1, x) - a << "\n"; break; }
        }
    }
    g.close(); f.close(); return 0;
}