#include <bits/stdc++.h>
using namespace std;
const double pi = acos(-1.0);
int lowbit(int x) { return x & (-x); }
const int maxn = 1e5 + 5, INF = 0x3f3f3f3f, P = 9999973;
int n, a[maxn], x, y;
bool can(int u) {
  int cnt = (u == 1 ? x : 0);
  for (int i = u - 1; i >= 1 && i >= u - x; --i)
    if (a[u] < a[i]) {
      if (i == 1)
        cnt = x;
      else
        ++cnt;
    } else
      break;
  if (cnt < x) return false;
  cnt = (u == n ? y : 0);
  for (int i = u + 1; i <= n && i <= u + y; ++i)
    if (a[u] < a[i]) {
      if (i == n)
        cnt = y;
      else
        ++cnt;
    } else
      break;
  if (cnt < y) return false;
  return true;
}
int main(void) {
  double h, l;
  cin >> h >> l;
  printf("%.15f\n", (l * l - h * h) / (2 * h));
  return 0;
}
