Cod sursa(job #2734609)

Utilizator BAlexandruBorgovan Alexandru BAlexandru Data 1 aprilie 2021 09:41:43
Problema Numerele lui Stirling Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.85 kb
#include <fstream>

using namespace std;

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

const int NMAX = 200;
const int MOD = 98999;

int s1[201][201];
int s2[201][201];

void init()
{
    s1[1][1] = 1;
    for (int i = 2; i <= NMAX; i++)
        for (int j = 1; j <= i; j++)
            s1[i][j] = (s1[i - 1][j - 1] - (i - 1) * s1[i - 1][j]) % MOD;

    s2[1][1] = 1;
    for (int i = 2; i <= NMAX; i++)
        for (int j = 1; j <= i; j++)
            s2[i][j] = (s2[i - 1][j - 1] + j * s2[i - 1][j]) % MOD;
}

int main()
{
    init();

    int t;
    f >> t;

    while (t--)
    {
        int x, n, m;
        f >> x >> n >> m;

        if (x == 1)
        {
            g << s1[n][m] << "\n";
        }
        else if (x == 2)
        {
            g << s2[n][m] << "\n";
        }
    }

    return 0;
}