Cod sursa(job #2726186)

Utilizator valentinchipuc123Valentin Chipuc valentinchipuc123 Data 20 martie 2021 14:24:29
Problema Diamant Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f("diamant.in");
ofstream g("diamant.out");

int main()
{
 short n,m;
 int salt,x;
 short dp[100005],aux[100005];
 f>>n>>m;
 f>>x;

 salt=0;

 for(short i=1;i<=n;i++)
  for(short j=1;j<=m;j++)
   salt+=i*j;

 dp[salt]=1;

 for(short i=1;i<=n;i++)
  for(short j=1;j<=m;j++){

   for(int z=0;z<=2*salt;z++) aux[z]=dp[z];
   for(int z=0;z<=salt*2;z++)
   {
    if(z>=i*j) dp[z]+=aux[z-i*j];
    if(z<=salt*2-i*j) dp[z]+=aux[z+i*j];

    dp[z]%=10000;
   }
 }

 if( x<-salt||salt<x ){
  g<<'0'<<'\n';
  return 0;
 }

 g<<dp[salt+x];
}