Pagini recente » Cod sursa (job #2194118) | Cod sursa (job #751678) | Cod sursa (job #1843682) | Cod sursa (job #2197611) | Cod sursa (job #327609)
Cod sursa(job #327609)
#include<stdio.h>
#define dim 100001
char s[dim];
int poz[dim];
using namespace std;
int main()
{short int q;
int nr,i,n,m,p=0,j,num;
FILE *f=fopen("cautbin.in","r"), *g=fopen("cautbin.out","w");
fscanf(f,"%d",&n);
for(i=1;i<=n;i++)
{fscanf(f,"%d",&nr); s[nr]=1; p++; poz[nr]=p;}
fscanf(f,"%d",&m);
for(i=1;i<=m;i++)
{fscanf(f,"%hd%d",&q,&num);
if(q==0) {if(s[num]==1) fprintf(g,"%d\n",poz[num]);
else fprintf(f,"-1\n");}
if(q==1) {if(s[num]==1) fprintf(g,"%d\n",poz[num]);
else for(j=num;j>=1;j--) if(s[j]==1) {fprintf(g,"%d\n",poz[j]); break;} }
if(q==2) {if(s[num]==1) fprintf(g,"%d\n",poz[num]);
else for(j=num;j<=100000;j++) if(s[j]==1) {fprintf(g,"%d\n",poz[j]); break;} }
}
fclose(f);
fclose(g);
return 0;
}