Cod sursa(job #2376511)

Utilizator SqueekDanielTodasca Daniel SqueekDaniel Data 8 martie 2019 16:04:44
Problema Numerele lui Stirling Scor 20
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.77 kb
#include <bits/stdc++.h>

#define MAXN  205
#define MOD 98999

int T;
int Stirling[2][MAXN][MAXN];

void Precompute() {
    Stirling[0][1][1] = Stirling[1][1][1] = 1;
    for (int i=2, j; i<MAXN; ++i)
        for (j=1; j<=i; ++j) {
            Stirling[0][i][j] = (Stirling[0][i-1][j] * (i-1) - Stirling[0][i-1][j-1]) % MOD;
            Stirling[1][i][j] = (Stirling[1][i-1][j] * j     + Stirling[1][i-1][j-1]) % MOD;
        }
}

std::ifstream In ("stirling.in");
std::ofstream Out("stirling.out");

void Citire() {
    In >> T;
}

void Rezolvare() {
    Precompute();
    int X, Y, type;
    while (T--)
        In >> type >> X >> Y,
        Out << Stirling[type-1][X][Y] << '\n';
}

int main()
{
    Citire();
    Rezolvare();

    return 0;
}