Cod sursa(job #2738478)

Utilizator sorana5Gligor Sorana sorana5 Data 5 aprilie 2021 22:06:09
Problema Numerele lui Stirling Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.88 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream citire("stirling.in");
ofstream afisare("stirling.out");

const int mod = 98999;

int s[201][201], S[201][201];

void precalculares()
{
    s[1][1] = 1;
    for (int i = 2; i <= 200; ++i)
        for (int j = 1; j <= i; ++j)
            s[i][j] = (s[i-1][j-1] - (i - 1) * s[i-1][j]) % mod;
}
void precalculareS()
{
    S[1][1] = 1;
    for (int i = 2; i <= 200; ++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 t, x, n, m;
    precalculares();
    precalculareS();
    citire>>t;
    for (int i = 1; i <= t; ++i)
    {
        citire>>x>>n>>m;
        if (x == 1)
            afisare<<s[n][m]<<'\n';
        else
            afisare<<S[n][m]<<'\n';
    }

    citire.close();
    afisare.close();
    return 0;
}