Pagini recente » Cod sursa (job #24103) | Cod sursa (job #841287) | Cod sursa (job #1205962) | Cod sursa (job #366131) | Cod sursa (job #626892)
Cod sursa(job #626892)
#include <cstdio>
using namespace std;
long a,speta,n,k,T,i;
long s(int n,int k)
{
if (k==n) return +1;
if (k==1) return +1;
return (s(n-1,k-1)-(n-1)*s(n-1,k)<0)?:(s(n-1,k-1)-(n-1)*s(n-1,k))%98999,-(s(n-1,k-1)-(n-1)*s(n-1,k))%98999;
}
long S(int n,int k)
{
if (k==n) return +1;
if (k==1) return +1;
return +(S(n-1,k-1)+k*S(n-1,k))%98999;
}
using namespace std;
int main()
{
freopen("stirling.in","r",stdin);
freopen("stirling.out","w",stdout);
scanf("%d",&T);
for (i=1; i<=T ;i++)
{
scanf("%d%d%d",&speta,&n,&k);
if (speta==1)
{
a=s(n,k)%98999;
}
if (speta==2) a=S(n,k)%98999;
printf("%d\n",a);
}
}