Cod sursa(job #1303221)

Utilizator alexchireaAlexandru Chirea alexchirea Data 27 decembrie 2014 19:21:49
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.86 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("cautbin.in");
ofstream g("cautbin.out");
int n,v[100001],m,p,x,i,a;
int main()
{
    f>>n;
    for (i=1; i<=n;i++) f>>v[i];
    f>>m;
    for (a=1; a<=m; a++)
    {
        f>>p>>x;
        if (p==0)
        {
            if (x<v[n/2]) {for (i=n/2;i>0;i--) if (v[i]==x) {g<<i<<endl;break;}}
            else {for (i=n;i>=n/2;i--) if (v[i]==x) {g<<i<<endl;break;}}
        }
        else if (p==1)
        {
            if (x<v[n/2]) {for (i=n/2;i>0;i--) if (v[i]<=x) {g<<i<<endl;break;}}
            else {for (i=n;i>=n/2;i--) if (v[i]<=x) {g<<i<<endl;break;}}
        }
        else
        {
            if (x<=v[n/2]) {for (i=1;i<n/2;i++) if (v[i]>=x) {g<<i<<endl;break;}}
            else {for (i=n/2;i<=n;i++) if (v[i]>=x) {g<<i<<endl;break;}}
        }
    }
    return 0;
}