Cod sursa(job #2012888)

Utilizator shantih1Alex S Hill shantih1 Data 19 august 2017 19:18:03
Problema Diamant Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <iostream>
#include <fstream>

using namespace std;
ifstream fin("diamant.in");
ofstream fout("diamant.out");

int n, m, x, i, j, k, g, a, b, d, sum, mj = 45000, v[90000], V[90000];

int main () {
    
    fin >> n >> m >> x;
    
    v[45000] = V[45000] = 1;
    for (a = 1; a <= n; a++)
        for (b = 1; b <= m; b++)
        {
            d = a*b;
            
            for (i = 45000-sum; i <= 45000+sum; i++)
                if (v[i] != 0)
                {   V[i-d] += v[i];     V[i+d] += v[i];   }
            
            sum += d;
            
            for (i = 45000-sum; i <= 45000+sum; i++)
            {   v[i] = V[i];       }
        }
    
    fout << v[45000 + x] << "\n";
}