Cod sursa(job #653871)

Utilizator titeltitel popescu titel Data 29 decembrie 2011 08:34:42
Problema Numerele lui Stirling Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include<fstream>
#define MOD 98999
using namespace std;
ifstream f("stirling.in"); ofstream g("stirling.out");
int S1(int n,int m)
{	if( !n || !m ) return 0;
	if( n<m ) return 0;
	if( n==1 && m==1 ) return 1;
	return ( S1(n-1,m-1) - (n-1)*S1(n-1,m) )%MOD;
}
int S2(int n,int m)
{	if( !n || !m ) return 0;
	if( n<m ) return 0;
	if( n==1 && m==1 ) return 1;
	return ( S2(n-1,m-1) + m*S2(n-1,m) )%MOD;
}
int main()
{	int speta,n,m,t;
	f>>t; 
	while( t-- )
	{	f>>speta>>n>>m;
		if(speta==1) g<<S1(n,m)<<'\n';
		if(speta==2) g<<S2(n,m)<<'\n';
	}
	g.close(); return 0;
}