Cod sursa(job #1342614)

Utilizator cosmin004Manolescu Cosmin cosmin004 Data 14 februarie 2015 12:03:10
Problema Numerele lui Stirling Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.77 kb
#include<iostream>
#include<fstream>
using namespace std;
const int N=201,MOD=98999;
int t,n,m,speta,s[N][N],S[N][N];
 ifstream f("stirling.in");
 ofstream g("stirling.out");
void precalculare_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 precalculare_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()
{
    precalculare_s();
    precalculare_S();

    f>>t;

    while(t--)
    {
        f>>speta>>n>>m;
        if(speta==1)
           g<<s[n][m]<<'\n';
        if(speta==2)
            g<<S[n][m]<<'\n';
    }

    return 0;
}