Cod sursa(job #296203)

Utilizator ghiutaalexGhiuta Alex ghiutaalex Data 4 aprilie 2009 14:08:38
Problema Diamant Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include<stdio.h>
FILE*f=fopen("diamant.in","r");
FILE*g=fopen("diamant.out","w");

int n,m,a[21][21],v[3]={-1,0,1},r;
long x,s;

void bkt(int k,int p)
{
 int i;
 for(i=0;i<=2;i++)
	{
         a[k][p]=v[i];
         s+=a[k][p]*k*p;
         if(k==n) if(p==m) {
                            if(s==x) r=(r+1)%10000;
                           }
                  else bkt(k,p+1);
	 else if(p==m) bkt(k+1,1);
	      else bkt(k,p+1);
	 s-=a[k][p]*k*p;
	}
}

int main()
{
 fscanf(f,"%d%d%ld",&n,&m,&x);
 bkt(1,1);
 fprintf(g,"%d\n",r);
 fcloseall();
 return 0;
}