Pagini recente » Cod sursa (job #1273599) | Cod sursa (job #2483088) | Cod sursa (job #1506621) | Cod sursa (job #1721334) | Cod sursa (job #2148802)
#include <iostream>
#include <fstream>
#define MOD 98999
using namespace std;
unsigned short int T, V, n, m;
long long int t;
ifstream fin("stirling.in");
ofstream fout("stirling.out");
long long int Stirling1(unsigned short int a, unsigned short int b) {
if (a == 0 && b == 0) return 1;
if (a == 0 || b == 0) return 0;
return (Stirling1(a - 1, b - 1) - ((a - 1) * Stirling1(a - 1, b))) % MOD;
}
unsigned long long int Stirling2(unsigned short int a, unsigned short int b) {
if (a == 0 && b == 0) return 1;
if (a == 0 || b == 0) return 0;
return (b * Stirling2(a - 1, b) + Stirling2(a - 1, b - 1)) % MOD;
}
int main()
{
unsigned short int i, j;
fin >> T;
for (i = 1; i <= T; i++) {
fin >> V;
fin >> n >> m;
if (V == 1) t = Stirling1(n, m);
else t = Stirling2(n, m);
fout << t << "\n";
}
return 0;
}