#include <bits/stdc++.h>
const int MAXN = 10005;
const int MOD = 998244353;
long long qpow(long long a, long long n) {
  long long res = 1;
  for (; n; n >>= 1, a = a * a % MOD)
    if (n & 1) res = res * a % MOD;
  return res;
}
long long inv(long long x) { return qpow(x, MOD - 2); }
long long fact[MAXN], invFact[MAXN];
void init() {
  fact[0] = 1;
  for (int i = 1; i < MAXN; i++) fact[i] = fact[i - 1] * i % MOD;
  invFact[MAXN - 1] = inv(fact[MAXN - 1]);
  for (int i = MAXN - 2; ~i; i--) invFact[i] = invFact[i + 1] * (i + 1) % MOD;
}
long long combi(int n, int m) {
  if (n < 0 || n < m) return 0;
  return fact[n] * invFact[m] % MOD * invFact[n - m] % MOD;
}
long long calc(int n, int l, int s) {
  if (!n) return !s;
  long long res = 0;
  for (int i = 0; i <= n; i++) {
    long long temp = combi(n, i) * combi(s + n - 1 - i * l, n - 1) % MOD;
    i % 2 ? res -= temp : res += temp;
    res < 0 ? res += MOD : 0;
    res >= MOD ? res -= MOD : 0;
  }
  return res;
}
int main() {
  init();
  int p, s, r;
  scanf("%d %d %d", &p, &s, &r);
  long long ans = 0;
  for (int i = r; i <= s; i++)
    for (int j = 1; j <= p && j * i <= s; j++) {
      long long temp =
          combi(p - 1, j - 1) * calc(p - j, i, s - j * i) % MOD * inv(j) % MOD;
      ans += temp;
      ans >= MOD ? ans -= MOD : 0;
    }
  ans = ans * inv(calc(p, s + 1, s - r)) % MOD;
  printf("%lld\n", ans);
  return 0;
}
