#include <bits/stdc++.h>
using namespace std;
int n, s, r, ans;
int inv[10010], fac[10010];
template <typename T>
void chkmin(T &x, T y) {
  x = min(x, y);
}
template <typename T>
void chkmax(T &x, T y) {
  x = max(x, y);
}
template <typename T>
void read(T &x) {
  x = 0;
  int f = 1;
  char ch = getchar();
  while (!isdigit(ch)) {
    if (ch == '-') f = -1;
    ch = getchar();
  }
  while (isdigit(ch)) {
    x = x * 10 + ch - '0';
    ch = getchar();
  }
  x *= f;
}
void update(int &x, int y) {
  x = (x + y >= 998244353) ? (x + y - 998244353) : (x + y);
}
int mul(int x, int y) { return 1ll * x * y % 998244353; }
int inc(int x, int y) {
  return (x + y >= 998244353) ? (x + y - 998244353) : (x + y);
}
int dec(int x, int y) { return (x - y < 0) ? (x - y + 998244353) : (x - y); }
int qpow(int a, int b) {
  int ret = 1;
  while (b) {
    if (b & 1) ret = 1ll * ret * a % 998244353;
    a = 1ll * a * a % 998244353;
    b >>= 1;
  }
  return ret;
}
void init(int n) {
  fac[0] = inv[0] = 1;
  for (int i = 1; i <= n; ++i) fac[i] = mul(fac[i - 1], i);
  inv[n] = qpow(fac[n], 998244353 - 2);
  for (int i = n - 1; i >= 1; --i) inv[i] = mul(inv[i + 1], i + 1);
}
int C(int n, int m) {
  if (m < 0 || m > n) return 0;
  return mul(fac[n], mul(inv[m], inv[n - m]));
}
int calc(int n, int m) {
  if (n == 0 && m == 0) return 1;
  return C(n + m - 1, m - 1);
}
int work(int n, int s, int lim) {
  if (s < 0) return 0;
  if (s == 0) return 1;
  int ret = 0;
  for (int i = 0; i <= n; ++i) {
    int tmp = mul(C(n, i), calc(s - i * (lim + 1), n));
    if (i & 1)
      ret = dec(ret, tmp);
    else
      ret = inc(ret, tmp);
  }
  return ret;
}
int main() {
  read(n), read(s), read(r);
  init(10010 - 2);
  if (r == 0 && s == 0) update(ans, qpow(n, 998244353 - 2));
  for (int i = max(r, 1); i <= s; ++i)
    for (int j = 1; j <= n; ++j) {
      int tmp = work(n - j, s - i * j, i - 1);
      int coef = C(n - 1, j - 1);
      coef = mul(coef, qpow(j, 998244353 - 2));
      update(ans, mul(coef, tmp));
    }
  int tim = 0;
  for (int i = r; i <= s; ++i) update(tim, calc(s - i, n - 1));
  ans = mul(ans, qpow(tim, 998244353 - 2));
  printf("%d\n", ans);
  return 0;
}
