Cod sursa(job #1144346)

Utilizator cbanu96Banu Cristian cbanu96 Data 16 martie 2014 23:05:40
Problema Numerele lui Stirling Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
#include <cstdio>

using namespace std;

#define FILEIN "stirling.in"
#define FILEOUT "stirling.out"
#define NMAX 201
#define MOD 98999

int S[3][NMAX][NMAX];

void precalc() {
    S[1][0][0] = S[2][0][0] = 1;

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

            S[2][i][j] = S[2][i-1][j-1] + j * S[2][i-1][j];
            S[2][i][j] %= MOD;
        }
    }
}

int main() {
    freopen(FILEIN, "r", stdin);
    freopen(FILEOUT, "w", stdout);

    int T, t, x, y;

    precalc();

    for (scanf("%d", &T); T; T--) {
        scanf("%d %d %d", &t, &x, &y);
        printf("%d\n", S[t][x][y]);
    }

    return 0;
}