#include <bits/stdc++.h>
using namespace std;
const int MOD = 998244353;
int p, s, r;
long long f[5010], invf[5010];
long long getInv(long long base) {
  long long ret = 1;
  int tmp = MOD - 2;
  while (tmp) {
    if (tmp & 1) ret = ret * base % MOD;
    base = base * base % MOD;
    tmp >>= 1;
  }
  return ret;
}
inline long long C(int m, int n) {
  if (m < n) return 0;
  return f[m] * invf[n] % MOD * invf[m - n] % MOD;
}
long long calc(int rest, int n, int ub) {
  if (!n) return (!rest);
  long long ret = 0;
  for (int i = 0; i <= n; i++) {
    long long tmp =
        C(rest - i * ub + n - 1, n - 1) * C(n, i) * ((i & 1) ? -1 : 1) % MOD;
    if (!tmp) break;
    ret = (ret + tmp) % MOD;
  }
  return ret;
}
int main() {
  ios::sync_with_stdio(false);
  cin >> p >> s >> r;
  f[0] = invf[0] = 1;
  for (int i = 1; i <= s; i++) {
    f[i] = f[i - 1] * i % MOD;
    invf[i] = getInv(f[i]);
  }
  long long ans = 0;
  for (int i = r; i <= s; i++)
    for (int j = 1; j <= p && i * j <= s; j++) {
      ans = (ans +
             C(p - 1, j - 1) * calc(s - i * j, p - j, i) % MOD * getInv(j)) %
            MOD;
    }
  ans = ans * getInv(C(s - r + p - 1, p - 1)) % MOD;
  cout << (ans + MOD) % MOD << "\n";
}
