#include <bits/stdc++.h>
using namespace std;
#pragma GCC optimize("Ofast")
#pragma GCC optimize("unroll-loops")
const long long maxn = 2e5 + 10, LG = 22, mod = 1e9 + 7, inf = 1e18;
long long cnt[maxn];
void add(long long k, long long x) {
  for (int i = 1; i <= k; i++) cnt[i] += x;
}
void C(long long n, long long r, long long x) {
  add(n, x);
  add(r, -x);
  add(n - r, -x);
}
int main() {
  ios_base::sync_with_stdio(0), cin.tie(0), cout.tie(0);
  long long n, m, k;
  cin >> n >> m >> k;
  if (m <= k) return cout << 1, 0;
  if (n + k < m) return cout << 0, 0;
  C(m + n, m - k - 1, +1);
  C(m + n, m, -1);
  long double ans = 1;
  for (int i = 1; i < maxn; i++) ans *= pow(i, cnt[i]);
  cout << fixed << setprecision(12) << 1 - ans << endl;
  return 0;
}
