Cod sursa(job #501496)
#include<fstream>
#include<cstdio>
using namespace std;
#define N 201
#define MOD 98999
int t,n,m,mod,s[N][N],S[N][N];
void calcs()
{
s[1][1]= 1;
for( int i=2 ; i<N ; ++i )
for( int j=1 ; j<=i ; ++j )
s[i][j]= ( s[i-1][j-1] - (i-1)*s[i-1][j] )%MOD ;
}
void calcS()
{
S[1][1]= 1;
for( int i=2 ; i<N ; ++i )
for( int j=1 ; j<=i ; ++j )
S[i][j]= ( S[i-1][j-1] + j*S[i-1][j] )%MOD;
}
int main()
{
ifstream in ("stirling.in");
freopen("stirling.out","w",stdout);
calcs();
calcS();
for(in>>t;t;--t){
in>>mod>>n>>m;
switch(mod){
case 1: printf("%d\n",s[n][m]);break;
case 2: printf("%d\n",S[n][m]);break;
}
}
return 0;}