#include <bits/stdc++.h>
using namespace std;
int a, b, l;
double f(double x) {
  double y = sqrt(l * l - x * x);
  return ((b - x) * (y - 0) - (a - 0) * (0 - x)) / l;
}
int main() {
  cin >> a >> b >> l;
  if (a > b) swap(a, b);
  if (l <= a) {
    cout << l << endl;
    return 0;
  } else if (l <= b) {
    cout << a << endl;
    return 0;
  } else {
    double t0 = l, t3 = 0;
    for (int k = 0; k < 150; k++) {
      double t1 = (t0 * 2 + t3) / 3, t2 = (t0 + t3 * 2) / 3;
      if (f(t1) < f(t2))
        t3 = t2;
      else
        t0 = t1;
    }
    double r = max(0.0, f(t0));
    if (r < (1e-12))
      cout << "My poor head =(" << endl;
    else
      printf("%.9lf\n", f(t0));
  }
}
