#include <bits/stdc++.h>
using namespace std;
const int mxn = 1000010, N = 1000000, md = 998244353;
int T, p, s, r, f[128][10010], fct[mxn], ifc[mxn];
int power(int x, int p, int num = 1) {
  for (; p; p >>= 1, x = 1ll * x * x % md)
    if (p & 1) num = 1ll * num * x % md;
  return num;
}
void add(int &x, int y) { x = (x + y) % md; }
int F(int s, int p) {
  return 1ll * fct[s + p - 1] * ifc[p - 1] % md * ifc[s] % md;
}
int main() {
  fct[0] = ifc[0] = 1;
  for (int i = 1; i <= N; ++i) fct[i] = 1ll * fct[i - 1] * i % md;
  ifc[N] = power(fct[N], md - 2);
  for (int i = N - 1; i; --i) ifc[i] = (i + 1ll) * ifc[i + 1] % md;
  scanf("%d%d%d", &p, &s, &r);
  if (p == 1) {
    puts("1");
    return 0;
  }
  if (r == 0) {
    printf("%d\n", power(p, md - 2));
    return 0;
  }
  int num = F(s, p);
  for (int i = 0, flg = -1; i <= p && r * i <= s; ++i, flg = -flg)
    num = (num + 1ll * flg * fct[p] * ifc[i] % md * ifc[p - i] % md *
                     F(s - r * i, p)) %
          md;
  num = 1ll * num * power(p, md - 2) % md;
  int sum = 1ll * fct[s - r + p - 1] * ifc[s - r] % md * ifc[p - 1] % md;
  num = 1ll * num * power(sum, md - 2) % md;
  printf("%d\n", (num + md) % md);
  return 0;
}
