Cod sursa(job #734386)

Utilizator robertpoeRobert Poenaru robertpoe Data 14 aprilie 2012 08:21:22
Problema Diamant Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include<fstream>
#include<cstring>
#define maxn 90000
using namespace std;
ifstream f("diamant.in");
ofstream g("diamant.out");
int a[maxn],b[maxn],i,n,j,k,p,m;
int main()
{
    f>>n>>m>>k;
    a[45000]=1;
    if(k<-44999||k>44999)
    {
        g<<"0\n";
        return 0;
    }
    for(i=1;i<=n;++i)
        for(j=1;j<=m;++j)
        {
            memcpy(b,a,sizeof(a));
            for(p=0;p<i*j;++p)
                a[p]=b[p]+b[p+i*j];
            for(p=i*j;p<maxn;++p)
                a[p]=b[p]+b[p-i*j]+b[p+i*j];
        }
    g<<a[k+45000]<<"\n";
}