#include <bits/stdc++.h>
using namespace std;
const int N = 1e6, mod = 998244353;
int n, s, r, sl, fh, res, fac[1000010], ifc[1000010];
int rd() {
  sl = 0;
  fh = 1;
  char ch = getchar();
  while (ch < '0' || '9' < ch) {
    if (ch == '-') fh = -1;
    ch = getchar();
  }
  while ('0' <= ch && ch <= '9') sl = sl * 10 + ch - '0', ch = getchar();
  return sl * fh;
}
int _pow(int k, int i) {
  int t = 1;
  for (; i; i >>= 1, k = 1ll * k * k % mod)
    if (i & 1) t = 1ll * t * k % mod;
  return t;
}
int C(int x, int y) { return 1ll * fac[x] * ifc[y] % mod * ifc[x - y] % mod; }
int main() {
  n = rd();
  s = rd();
  r = rd();
  res = 0;
  fac[0] = 1;
  for (int i = 1; i <= N; ++i) fac[i] = 1ll * i * fac[i - 1] % mod;
  ifc[N] = _pow(fac[N], mod - 2);
  for (int i = N; i; --i) ifc[i - 1] = 1ll * i * ifc[i] % mod;
  for (int x = 1, i = 1; i <= n && i * r <= s; ++i, x = -x)
    res = (res + 1ll * x * C(n, i) * C(s - i * r + n - 1, n - 1)) % mod;
  res = 1ll * (res + mod) * _pow(n, mod - 2) % mod;
  printf("%lld\n", 1ll * res * _pow(C(s - r + n - 1, n - 1), mod - 2) % mod);
  return 0;
}
