Cod sursa(job #2797136)

Utilizator iulia.chereji21Chereji Iulia iulia.chereji21 Data 9 noiembrie 2021 12:34:54
Problema Numerele lui Stirling Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.85 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream fin("stirling.in");
ofstream fout("stirling.out");
const int MOD=98999;

int s[201][201];
int S[201][201];
int t,x,n,m;

void precalculare_s(){
    s[0][0]=1;
    //s[n][0]=0, s[0][k]=0 din start
    for(int n=1;n<=200;n++){
        for(int k=1;k<=200;k++){
            s[n][k]=(s[n-1][k-1]+(n-1)*s[n-1][k])%MOD;
        }
    }
}

void precalculare_S(){
    S[0][0]=1;
    //S[n][0]=0, S[0][k]=0 din start
    for(int n=1;n<=200;n++){
        for(int k=1;k<=200;k++){
            S[n][k]=(S[n-1][k-1]+k*S[n-1][k])%MOD;
        }
    }
}

int main()
{
    precalculare_s();
    precalculare_S();
    fin>>t;
    for(int i=0;i<t;i++){
        fin>>x>>n>>m;
        if(x==1) fout<<s[n][m]<<'\n';
        else fout<<S[n][m]<<'\n';
    }
    return 0;
}