Pagini recente » Cod sursa (job #2193282) | Cod sursa (job #1897097) | Cod sursa (job #1791877) | Cod sursa (job #174560) | Cod sursa (job #245084)
Cod sursa(job #245084)
#include <stdio.h>
int n,i,a[100],x,m,p,y;
int cautbin(int m1,int m2)
{
int mid;
while(m1<m2)
{
mid=(m1+m2)/2;
if(x>a[mid])
m1=mid+1;
else
m2=mid;
}
y=m1;
if(x==a[m1])
return m1;
else
return -1;
}
int main()
{
freopen("cautbin.in","r",stdin);
freopen("cautbin.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++) scanf("%d",&a[i]);
scanf("%d",&m);
for(i=1;i<=m;i++)
{
scanf("%d %d",&p,&x);
if(p==0)
printf("%d\n",cautbin(1,n));
if(p==1)
if(cautbin(1,n)==-1)
printf("%d\n",y-1);
else printf("%d\n",y);
if(p==2)
if(cautbin(1,n)==-1)
printf("%d\n",y);
else
printf("%d\n",y);
}
return 0;
}