Cod sursa(job #1141709)

Utilizator ArmandNMArmand Nicolicioiu ArmandNM Data 13 martie 2014 02:38:47
Problema Numerele lui Stirling Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.82 kb
#include <fstream>

const int NMAX = 205;
const int MMAX = 205;
const int MOD = 98999;

using namespace std;

ifstream f("stirling.in");
ofstream g("stirling.out");

int T,x,n,m,S[NMAX][MMAX],s[NMAX][MMAX];

int main()
{
    S[1][1] = 1;
    for (int i = 2; i <= 200; ++i)
    {
        for (int j = 1; j <= i; ++j)
        {
             S[i][j]= (S[i-1][j-1] + j*S[i-1][j]) % MOD;
        }
    }
    s[1][1] = 1;
    for (int i = 2; i <= 200; ++i)
    {
        for (int j = 1; j <= i; ++j)
        {
            s[i][j] = (s[i-1][j-1] - (i-1)*s[i-1][j]) % MOD;
        }
    }

    f >> T;
    for (int i = 1; i <= T; ++i)
    {
        f >> x >> n >> m;
        if (x == 1)
            g << s[n][m] << '\n';
        else g << S[n][m] << '\n';
    }
    f.close();
    g.close();
    return 0;
}