#include <bits/stdc++.h>
using namespace std;
const int mod = 998244353;
const int N = 6000;
int fac[N], fav[N];
int a[N];
int qpow(int x, int y) {
  int ans = 1;
  while (y) {
    if (y & 1) ans = 1ll * ans * x % mod;
    x = 1ll * x * x % mod;
    y /= 2;
  }
  return ans;
}
void init() {
  fac[0] = 1;
  for (int i = 1; i < N; i++) fac[i] = 1ll * fac[i - 1] * i % mod;
  fav[N - 1] = qpow(fac[N - 1], mod - 2);
  for (int i = N - 2; i >= 0; i--) fav[i] = 1ll * fav[i + 1] * (i + 1) % mod;
}
int C(int n, int m) {
  if (n == m) return 1;
  if (n < 0 || m < 0 || n < m) return 0;
  return 1ll * fac[n] * fav[m] % mod * fav[n - m] % mod;
}
int main() {
  init();
  int p, s, r;
  scanf("%d%d%d", &p, &s, &r);
  int ans = 0;
  for (int i = r; i <= s; i++) {
    for (int j = 1; j <= p; j++) {
      if (j * i > s) break;
      int tmp = 0;
      int inv = 1ll * qpow(j, mod - 2) * C(p - 1, j - 1) % mod;
      for (int k = 0, d = 1; k <= p - j; k++, d *= -1) {
        tmp =
            (tmp + 1ll * d * C(p - j, k) *
                       C(s - i * j + (p - j) - 1 - k * (i), p - j - 1) % mod) %
            mod;
        tmp = (tmp + mod) % mod;
      }
      ans = (ans + 1ll * tmp * inv % mod) % mod;
    }
  }
  ans = 1ll * ans * qpow(C(s - r + p - 1, p - 1), mod - 2) % mod;
  printf("%d\n", ans);
  return 0;
}
