Cod sursa(job #2437993)

Utilizator ShayTeodor Matei Shay Data 10 iulie 2019 21:16:38
Problema Numerele lui Stirling Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include <stdio.h>

#define NMAX 201
#define MOD 98999

int s[NMAX][NMAX], S[NMAX][NMAX];

void precalc() {
    s[1][1] = S[1][1] = 1;
    for (int i = 2 ; i < NMAX ; ++i) {
        for (int j = 1 ; j <= i ; ++j) {
            s[i][j] = (s[i - 1][j - 1] - (i - 1) * s[i - 1][j]) % MOD;
            S[i][j] = (S[i - 1][j - 1] + j * S[i - 1][j]) % MOD; 
        }
    }
}

int main() {
    freopen("stirling.in", "r", stdin);
    freopen("stirling.out", "w", stdout);
    int T, x, n, m;
    precalc();
    scanf("%d", &T);
    for (; T ; --T) {
        scanf("%d%d%d", &x, &n, &m);

        if (x == 1) {
            printf("%d\n", s[n][m]);
        } else {
            printf("%d\n", S[n][m]);
        }
    }

    return 0;
}