Cod sursa(job #1970389)

Utilizator mihai.alphamihai craciun mihai.alpha Data 19 aprilie 2017 12:06:35
Problema Numerele lui Stirling Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.83 kb
#include <bits/stdc++.h>

using namespace std;

FILE *fin = fopen("stirling.in", "r"), *fout = fopen("stirling.out", "w");

#define mod 98999

const int maxi = 200;
int t, speta, n, m;
int d[3][maxi + 1][maxi  + 1];

inline void precI()  {
    d[1][1][1] = 1;
    for(int i = 2;i <= maxi;i++)
        for(int j = 1;j <= maxi;j++)
            d[1][i][j] = (d[1][i - 1][j - 1] - (i - 1) * d[1][i - 1][j]) % mod;
}

inline void precII()  {
    d[2][1][1] = 1;
    for(int i = 2;i <= maxi;i++)
        for(int j = 1;j <= maxi;j++)
            d[2][i][j] = (d[2][i - 1][j - 1] + (j) * d[2][i - 1][j]) % mod;
}

int main()  {
    precI(), precII();
    fscanf(fin, "%d", &t);
    for(int i = 1;i <= t;i++)  {
        fscanf(fin, "%d%d%d", &speta, &n, &m);
        fprintf(fout, "%d\n", d[speta][n][m]);
    }
    fclose(fin);
    fclose(fout);
    return 0;
}