Cod sursa(job #932986)
| Utilizator | Data | 29 martie 2013 14:41:00 | |
|---|---|---|---|
| Problema | Numerele lui Stirling | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.62 kb |
#include <cstdio>
#include <iostream>
using namespace std;
const int N=201;
int s1[N][N],s2[N][N];
int main()
{
s1[1][1]=s2[1][1]=1;
for(int i=2;i<N;++i)
for(int j=1;j<=i;++j)
s1[i][j]=(s1[i-1][j-1]-(i-1)*s1[i-1][j])%98999;
for(int i=2;i<N;++i)
for(int j=1;j<=i;++j)
s2[i][j]=(s2[i-1][j-1]+j*s2[i-1][j])%98999;
int T,n,m;
short s;
scanf("%d",&T);
for(int i=1;i<=T;++i)
{
scanf("%d%d%d",&s,&n,&m);
if(s==1)
printf("%d\n",s1[n][m]);
else
printf("%d\n",s2[n][m]);
}
return 0;
}
