Cod sursa(job #108939)

Utilizator GagosGagos Radu Vasile Gagos Data 24 noiembrie 2007 11:08:19
Problema 1-sir Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include<stdio.h>
struct nod{
	long int info;
	nod *s,*d;
};
nod *r;
long int n,s,nr_sol,sol;
nod *creare(long int i,long int val)
{
	nod *r;
	if(i<=n-1){
		r=new nod;
		r->info=val;
		r->s=creare(i+1,val-1);
		r->d=creare(i+1,val+1);
		return r;
	}
	else
		return NULL;
}
void rsd(nod *r,long int val)
{
	if(r!=NULL){
		val=val+r->info;
		rsd(r->s,val);
		rsd(r->d,val);
	}
	else
		if(val==s){
			++nr_sol;
			sol=nr_sol%194767;
		}
}
int main()
{

	scanf("%ld",&n);
	r=creare(1,0);
	rsd(r,1);
	rsd(r,-1);
	printf("%ld\n",sol);
	return 0;
}