Pagini recente » Cod sursa (job #1702036) | Cod sursa (job #1037042) | Cod sursa (job #1996195) | Cod sursa (job #374767) | Cod sursa (job #2738472)
#include <iostream>
#include <fstream>
using namespace std;
ifstream citire("stirling.in");
ofstream afisare("stirling.out");
const int mod = 98999;
int apels (int n, int m)
{
if (!n || !m)
return 0;
if (n < m)
return 0;
if (n == 1 && m == 1)
return 1;
return (apels(n - 1, m - 1) - (n - 1) * apels(n - 1, m)) % mod;
}
int apelS (int n, int m)
{
if (!n || !m)
return 0;
if (n < m)
return 0;
if (n == 1 && m == 1)
return 1;
return (apelS(n - 1, m - 1) - m * apelS(n - 1, m)) % mod;
}
int main()
{
int t, x, n, m;
citire>>t;
for (int i = 1; i <= t; ++i)
{
citire>>x>>n>>m;
if (x == 1)
afisare<<apels(n, m)<<'\n';
else
afisare<<apelS(n, m)<<'\n';
}
citire.close();
afisare.close();
return 0;
}