Cod sursa(job #1775880)

Utilizator dragos.boncanBoncan Dragos Eduard Gabriel dragos.boncan Data 10 octombrie 2016 19:39:34
Problema Cautare binara Scor 40
Compilator c Status done
Runda Arhiva educationala Marime 1.03 kb
#include<stdio.h>
int v[1000001];
int main () {
    FILE *fin, *fout;
    int i,x,k,n,m,q,j,a,b;
    fin=fopen("cautbin.in","r");
    fscanf(fin,"%d",&n);
    for(i=0;i<n;i++)
    fscanf(fin,"%d",&v[i]);
    fscanf(fin,"%d",&k);
    fout=fopen("cautbin.out","w");
    for(i=0;i<k;i++) {
        fscanf(fin,"%d%d",&a,&b);
        if(a==0) {
            m=n-1;
            while(v[m]>b && m>=0)
            m--;
           // printf("%d\n",m);
            if(v[m]==b)
            fprintf(fout,"%d\n",m+1);
            else
            fprintf(fout,"-1\n");
        }
        if(a==1) {
            m=n-1;
            while(v[m]>b && m>=0)
            m--;
            fprintf(fout,"%d\n",m+1);
            //if(v[m]==b)
            //printf("%d\n",m+1);
            //else
            //printf("-1\n");
        }
        if(a==2) {
            m=0;
            while(v[m]<b && m<n)
            m++;
            fprintf(fout,"%d\n",m+1);
        }
    }
    fclose(fin);
    fclose(fout);
        return 0;
}