Cod sursa(job #2595875)

Utilizator Robert_VRVRobert Vadastreanu Robert_VRV Data 8 aprilie 2020 16:17:51
Problema Numerele lui Stirling Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.67 kb
#include <fstream>

std::ifstream fin("stirling.in");
std::ofstream fout("stirling.out");

const int MOD = 98999;
const int MAX_N = 205;

int s1[MAX_N][MAX_N], s2[MAX_N][MAX_N];

void init() {
  s1[1][1] = 1;
  s2[1][1] = 1;
  for (int i = 2; i < MAX_N; i++)
    for (int j = 1; j <= i; j++) {
      s1[i][j] = (s1[i - 1][j - 1] - s1[i - 1][j] * (i - 1)) % MOD;
      s2[i][j] = (s2[i - 1][j - 1] + s2[i - 1][j] * j) % MOD;
    }
}

int main() {

  init();
  int Q;
  fin >> Q;
  while (Q--) {
    int type, n, m;
    fin >> type >> n >> m;
    if (type == 1)
      fout << s1[n][m] << '\n';
    else
      fout << s2[n][m] << '\n';
  }

  return 0;
}