Cod sursa(job #3278044)

Utilizator StefanRaresStefan Rares StefanRares Data 18 februarie 2025 16:59:18
Problema Numerele lui Stirling Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.79 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("stirling.in");
ofstream g("stirling.out");
const int MOD = 98999, NMAX = 210;
int n, m, T, x, s[NMAX + 5][NMAX + 5], S[NMAX + 5][NMAX + 5];
void Speta1()
{
   s[0][0] = 1;
   for(int i = 1; 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;
}
void Speta2()
{
    S[0][0] = 1;
    for(int i = 1; i <= NMAX; i++)
        for(int j = 1; j <= i; j++)
            S[i][j] = (S[i - 1][j - 1] + j * S[i - 1][j]) % MOD;
}
int main()
{
    int n, m, x, T;
    f >> T;
    Speta1();
    Speta2();
    while(T--)
    {
        f >> x >> n >> m;
        if(x == 1) g << s[n][m] << '\n';
        else g << S[n][m] << '\n';
    }
    return 0;
}