Cod sursa(job #539693)

Utilizator dragosd2000Dumitrache Dragos dragosd2000 Data 23 februarie 2011 11:29:22
Problema Cautare binara Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include<fstream.h>
ifstream fin("cautbin.in");
ofstream fout("cautbin.out");
int n,a[200],i,j,nrb[200],y[200];
void citire()
{
	fin>>n;
	for(i=1;i<=n;i++)
		fin>>a[i];
}
void binar(int x[200])
{
	for(i=1;i<=n;i++)
		while(x[i]!=0)
		{
			nrb[i]=nrb[i]*10+x[i]%2;
			x[i]=x[i]/2;
		}
}
void numarare(int nr[200])
{
	for(i=1;i<=n;i++)
		while(nr[i]!=0)
		{
			if(nr[i]%10==1)
				y[i]++;
			nr[i]=nr[i]/10;
		}
}
void verificare()
{
	for(i=1;i<=n;i++)
	{
		binar(a[i]);
		binar(a[i+1]);
		if(y[i]==y[i+1])
			fout<<a[i]<<' '<<a[i+1]<<'\n';
}
int main()
{
	citire();
	binar(a);
	numarare(nrb);
	verificare();
	return 0;
}