#include <bits/stdc++.h>
using namespace std;
const int M = 100005;
long double f[M], ans = 0;
inline long double C(int n, int m) { return f[n] - f[m] - f[n - m]; }
int n, m, k;
int main() {
  f[0] = 0;
  for (int i = 1; i < M; i++) f[i] = f[i - 1] + log(1.0 * i);
  scanf("%d %d %d", &n, &m, &k);
  for (int x = 0; x <= n; x++)
    for (int y = 0; y <= n; y++) {
      int z = (x + y) * n - x * y;
      if (z <= k)
        ans = min((long double)1e99,
                  ans + exp(C(n, x) + C(n, y) + C(m - z, k - z) - C(m, k)));
    }
  printf("%.10lf\n", (double)ans);
  return 0;
}
