#include <bits/stdc++.h>
using namespace std;
const long long mod = 998244353;
long long p, s, r, ans, fac[10000], inv[10000];
int c[6005][6005];
long long kp(long long a, long long b) {
  if (!b) return 1;
  long long c = kp(a, b >> 1);
  c = (c * c) % mod;
  if (b & 1) c = (c * a) % mod;
  return c;
}
void prework(int x) {
  for (int i = 0; i <= x; i++) {
    c[i][0] = 1;
    for (int j = 1; j <= i; j++)
      c[i][j] = (c[i - 1][j] + c[i - 1][j - 1]) % mod;
  }
  fac[0] = 1;
  for (int i = 1; i <= x; i++) fac[i] = fac[i - 1] * i % mod;
  long long invv = kp(fac[x], mod - 2);
  for (int i = x; i; i--)
    inv[i] = invv * fac[i - 1] % mod, invv = invv * i % mod;
}
int main() {
  scanf("%lld%lld%lld", &p, &s, &r);
  prework(6000);
  for (int i = r; i <= s; i++) {
    for (int j = 1; j <= p; j++)
      if (!(i * j > s || (p - j) * (i - 1) + j * i < s)) {
        if (j == p) {
          if (i * j == s) ans = (ans + kp(p, mod - 2)) % mod;
        } else {
          long long t = 0;
          for (long long k = 0, bo = 1, boo = -1;
               k <= p - j && k * i <= s - j * i; k++, bo = bo * boo)
            t = ((t +
                  bo * c[p - j][k] * c[s - (k + j) * i + p - j - 1][p - j - 1] %
                      mod +
                  mod) %
                     mod +
                 mod) %
                mod;
          ans = (ans + t * c[p - 1][j - 1] % mod * inv[j] % mod) % mod;
        }
      }
  }
  ans = ans * kp(c[s - r + p - 1][p - 1], mod - 2) % mod;
  printf("%lld", ans);
}
