#include <bits/stdc++.h>
using namespace std;
long gcd(long a, long b) {
  while (b) {
    a %= b;
    swap(a, b);
  }
  return a;
}
int main() {
  long long a, h, w;
  cin >> a >> h >> w;
  if (a > min(h, w)) {
    cout << -1;
    return 0;
  }
  long long g = gcd(h + a, w + a);
  long long k = g / a;
  long double answer = (long double)g / (long double)k;
  if (((w + a) / g * k <= 0) && ((h + a) / g * k <= 0))
    cout << -1;
  else
    printf("%.9f", answer - a);
  return 0;
}
