Cod sursa(job #752661)

Utilizator roxyroxy2011Luca Roxana roxyroxy2011 Data 29 mai 2012 10:13:46
Problema Diamant Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <stdio.h>
FILE *f=fopen("diamant.in","r");
FILE *g=fopen("diamant.out","w");

int a[50000][400];int n,m,k;

void solve();

int main()
{
	fscanf(f,"%d %d %d",&n,&m,&k);
	if (k<0) k=-k;
	if (k<=44100)
	{
		solve();
		fprintf(g,"%d\n",a[k][n*m]);
	}
	else fprintf(g,"0\n");
	fclose(f);fclose(g);
	return 0;
}

void solve()
{
	a[1][1]=1;
	for (int i=2;i<=k;i++)
	{
		a[i][1]=1;a[i][i]=1;
		for (int j=2;j<i && j<=n*m;j++)
			for (int k0=1;k0<=i-j && k0<=j;k0++)
				a[i][j]+=a[i-j][k0];
	}
}