Cod sursa(job #3269608)

Utilizator andrei1232008nicolae andrei andrei1232008 Data 19 ianuarie 2025 23:26:49
Problema Numerele lui Stirling Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.83 kb
#include <bits/stdc++.h>
#define mod 98999
#define lim 210
using namespace std;
ifstream fin("stirling.in");
ofstream fout("stirling.out");
int q,i,n,t,a,b;
vector <vector<int>>s(lim+1,vector<int> (mod+1));
vector <vector<int>>S(lim+1,vector<int>(mod+1));
int sterling()
{
    int i,j;
    s[0][0]=1;
    for(i=1;i<=lim;i++)
        for(j=1;j<=min(mod,i);j++)
        s[i][j]=1LL*(s[i-1][j-1]+(i-1)*s[i-1][j])%mod;
}
int Sterling()
{
    int i,j;
    S[0][0]=1;
    for(i=1;i<=lim;i++)
        for(j=1;j<=min(mod,i);j++)
        S[i][j]=1LL*(S[i-1][j-1]+j*S[i][j-1])%mod;
}
void query()
{
    fin>>q;
    for(i=1;i<=q;i++)
    {
        fin>>t>>a>>b;
        if(t==1)fout<<s[a][b]<<'\n';
        else fout<<S[a][b]<<'\n';
    }
}
int main()
{
    sterling();
    Sterling();
    query();
    return 0;
}