Cod sursa(job #221778)

Utilizator mikeblueeyes21Mihai Gradinescu mikeblueeyes21 Data 17 noiembrie 2008 22:18:44
Problema Cautare binara Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include <stdio.h>

int v[100], n, x;

int binar (int ls, int ld)
{
	if (ls==ld)
	{
		if (v[ls]==x)
			return ls;
		else
			return -1;
	}
	if (x<v[(ls+ld)/2])
		return binar (ls, (ls+ld)/2);
	else
		return binar ((ls+ld)/2+1, ld);
}

int main ()
{
	freopen ("cautbin.in", "r", stdin);
	freopen ("cautbin.out", "w", stdout);
	
	scanf ("%d", n);
	for (int i=1; i<n; i++)
		scanf ("%d", v[i]);
	scanf ("%d", x);
	printf ("%d", binar (1, n));
}