Pagini recente » Cod sursa (job #197677) | Cod sursa (job #1103373) | Cod sursa (job #394732) | Cod sursa (job #1757028) | Cod sursa (job #2579592)
#include <iostream>
#include<fstream>
#define mod 98999
#define N 205
using namespace std;
ifstream fin("stirling.in");
ofstream fout("stirling.out");
//NR LUI STIRLING DE SPETA 2
//toate modurile in care putem partitiona cele n elem
//precalculam factorialul
//preclc nr stirl
int a[N][N];//sp 1
int b[N][N];//sp 2
void precalc()
{
int i,j;
//sp1
a[0][0]=1;
for(i=1;i<=N;++i)
a[i][0]=a[0][i]=0;
for(i=1;i<=N;++i)
for(j=1;j<=i;++j)
a[i][j]=(a[i-1][j-1]-((i-1)*a[i-1][j])%mod)%mod;
//sp2
b[0][0]=1;
for(i=1;i<=N;++i)
b[i][0]=b[0][i]=0;
for(i=1;i<=N;++i)
for(j=1;j<=i;++j)
b[i][j]=((b[i-1][j-1]+j*b[i-1][j])%mod)%mod;
}
int main()
{
int t,x,y,i,n;
precalc();
fin>>n;
for(i=1;i<=n;++i)
{
fin>>t>>x>>y;
if(t==1)fout<<a[x][y]<<"\n";
else fout<<b[x][y]<<"\n";
}
fin>>n;
precalc();
return 0;
}