Cod sursa(job #1930027)

Utilizator Garen456Paun Tudor Garen456 Data 18 martie 2017 14:11:22
Problema Diamant Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <fstream>
#include <cmath>
using namespace std;
ifstream fin("diamant.in");
ofstream fout("diamant.out");
int sol[401][45000],n,m,s,i,j;
int main()
{   fin>>n>>m>>s;
    sol[0][0]=1;
    s=abs(s);
    int maxi=0,k;
    for(i=1;i<=n;++i)
    {
        for(j=1;j<=m;++j)
        { maxi+=i*j;
            for(k=0;k<=maxi;++k)
                sol[(i-1)*m+j][k]=(sol[(i-1)*m+j-1][int(abs(k-i*j))] +sol[(i-1)*m+j-1][k]+ sol[(i-1)*m+j-1][k+i*j] )%10000;
        }
    }
    if(s<=maxi)
    fout<<sol[m*n][s];
    else fout<<0;
    return 0;
}