Cod sursa(job #1934851)

Utilizator valentin50517Vozian Valentin valentin50517 Data 21 martie 2017 21:12:25
Problema Numerele lui Stirling Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <bits/stdc++.h>
#define mxn (1<<8)
#define mxk (1<<8)
#define mod 98999
typedef long long ll;
using namespace std;
ll S1[mxn][mxk],S2[mxn][mxk],N;
int main() {
	ifstream cin("stirling.in");
	ofstream cout("stirling.out");
    S1[1][1] = S2[1][1] = 1;
    for(int i = 2;i<mxn;i++)
        for(int j = 1;j<=min(mxk,i);j++){
            S1[i][j] = (S1[i-1][j-1] - (i-1)*S1[i-1][j])%mod;
            S2[i][j] = (S2[i-1][j-1] + j*S2[i-1][j])%mod;    
        }
    cin >> N;
    for(int t,x,y;N--;){
        cin >>  t >> x >> y;
        cout << (t == 1 ? S1[x][y] : S2[x][y]) << '\n';
    }
}