Cod sursa(job #1124159)

Utilizator MarghescuGabriel Marghescu Marghescu Data 26 februarie 2014 11:37:43
Problema Numerele lui Stirling Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include<cstdio>
#define N 201
#define MOD 666013
using namespace std;
int t,n,m,sp,s[N][N],S[N][N];
void calc_s()
{
	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 calc_S()
{
	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()
{
	freopen("stirling.in","r",stdin);
	freopen("stirling.out","w",stdout);

	calc_s();
	calc_S();
	scanf("%d",&t);

	while(t--)
	{
		scanf("%d%d%d",&sp,&n,&m);
		if(sp==1)
			printf("%d\n",s[n][m]);
		if(sp==2)
			printf("%d\n",S[n][m]);
	}
	return 0;
}