Cod sursa(job #766491)
Utilizator | Radu Bucur radu_bucur | Data | 11 iulie 2012 14:47:05 |
---|---|---|---|
Problema | Diamant | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.55 kb |
#include <fstream>
using namespace std;
ifstream in("diamant.in");
ofstream out("diamant.out");
int a[200001],b[200001],maxim,i,j,l,h,sum,n,m,val;
int main(){
in>>n>>m>>val;
sum=0;
for (i=1;i<=n;i++)
for (j=1;j<=m;j++)
{
sum=sum+i*j;
}
maxim=44200;
a[maxim]=1;
for (i=1;i<=n;i++)
for(j=1;j<=m;j++)
{
for (l=-sum;l<=sum;l++)
b[l+maxim]=(a[l+maxim]+a[l+maxim+i*j]+a[l+maxim-i*j])%10000;
for (h=-sum;h<=sum;h++)
a[h+maxim]=b[h+maxim];
}
out<<b[val+maxim];
return 0;
}