Cod sursa(job #2837423)

Utilizator MateiAruxandeiMateiStefan MateiAruxandei Data 22 ianuarie 2022 10:33:33
Problema Diamant Scor 60
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <bits/stdc++.h>

#define MOD 10000
using namespace std;

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

int main()
{
    int n, m, x;
    fin >> n >> m >> x;

    map<int, int> mp;
    mp[0] = 1;
    for(int i = 1; i <= n; ++i)
        for(int j = 1; j <= m; ++j)
        {
            int num = i * j;
            map<int, int> aux;
            for(auto it: mp)
                aux[it.first + num] += it.second, aux[it.first - num] += it.second;
            for(auto it: aux)
                mp[it.first] = (mp[it.first] + it.second) % MOD;
        }

    fout << mp[x] << '\n';
    return 0;
}