Cod sursa(job #1997476)

Utilizator Andrei_CotorAndrei Cotor Andrei_Cotor Data 4 iulie 2017 14:13:33
Problema Diamant Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include<fstream>
#include<string.h>
#include<map>
using namespace std;
ifstream fi("diamant.in");
ofstream fo("diamant.out");
map<int,int> A,B;
int n,m,x,i,j,k,maxim;
int main()
{
    fi>>n>>m>>x;
    A[0]=1;
    maxim=0;
    for(i=1; i<=n; i++)
        for(j=1; j<=m; j++)
        {
            B=A;
            maxim=maxim+i*j;
            for(k=maxim; k>=-maxim; k--)
            {
                A[k]=B[k-i*j]+B[k]+B[k+i*j];
                A[k]%=10000;
            }
        }
    fo<<A[x]<<"\n";
    fi.close();
    fo.close();
    return 0;
}