Cod sursa(job #2101656)

Utilizator AndreiStanescuAlloys Nokito AndreiStanescu Data 7 ianuarie 2018 19:24:47
Problema Diamant Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include<bits/stdc++.h>
#define mod 10000
#define sum 100000
using namespace std;
int main()
{
    ifstream cin("diamant.in");
    ofstream cout("diamant.out");
    int n,m,s,v[sum],x[sum],s1,i,j,k;
    cin>>n>>m>>s;
    s1=n*(n+1)/2*m*(m+1)/2;
    if(abs(s)>s1) cout<<0;
    else
    {
        v[0]=1;
        s1=0;
        for(i=1;i<=n;i++)
            for(j=1;j<=m;j++)
        {

            s1+=i*j;
            for(k=0;k<=s1;k++)
            { x[k]=(v[abs(k-i*j)]+v[k]+v[k+i*j])%mod;
                //x[k+i*j]=(x[k+i*j]+v[k])%mod;
               // x[k-i*j]=(x[k-i*j]+v[k])%mod;
               // x[k]=(x[k]+v[k])%mod;

            }


             memcpy(v,x,sizeof(x));
             //memset(x,0,s1);

        }
    }
    cout<<x[abs(s)];
}