Cod sursa(job #1715822)

Utilizator timicsIoana Tamas timics Data 11 iunie 2016 15:24:30
Problema Numerele lui Stirling Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.81 kb
#include<stdio.h>
#include<bitset>
#include<algorithm>
#include<iostream>
#include<vector>
#define pb push_back
#define mp make_pair
#define fs first
#define sc second
#define MOD 98999
using namespace std;
int n,x,m,T;
int S[220][220],s[220][220];

int main() {
	freopen("stirling.in","r",stdin);
	freopen("stirling.out","w",stdout);
	//freopen("input.in","r",stdin);
    S[0][0] = 1;
    s[0][0] = 1;
    for(int i=1;i<=200;++i) {
        for(int j=1;j<=200;++j) {
            S[i][j] = (S[i-1][j-1] + 1LL*j*S[i-1][j]) % MOD;
            s[i][j] = (1LL*(i-1)*s[i-1][j]) % MOD;
            s[i][j] = (s[i-1][j-1] - s[i][j] + MOD ) % MOD;
        }
    }
	scanf("%d",&T);
    for(int i=1;i<=T;++i) {
        scanf("%d%d%d",&x,&n,&m);
        if(x==1) printf("%d\n",s[n][m]);
        else printf("%d\n",S[n][m]);
    }
    return 0;
}