#include <bits/stdc++.h>
using namespace std;
struct custom_hash {
  size_t operator()(uint64_t x) const {
    static const uint64_t FIXED_RANDOM =
        chrono::steady_clock::now().time_since_epoch().count();
    x ^= FIXED_RANDOM;
    return x ^ (x >> 16);
  }
};
long long int power(long long int x, long long int y, long long int p) {
  long long int res = 1;
  x = x % p;
  if (x == 0) return 0;
  while (y > 0) {
    if (y & 1) res = (res * x) % p;
    y = y >> 1;
    x = (x * x) % p;
  }
  return res;
}
long long int modInverse(long long int n, long long int p) {
  return power(n, p - 2, p);
}
vector<vector<int>> dp;
void solve() {
  int H, L;
  cin >> H >> L;
  long double t = 1ll * H * H + 1ll * L * L;
  cout << fixed << setprecision(8);
  cout << 0.5 * t / (sqrt(t - 1ll * L * L)) - H << '\n';
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  int T;
  solve();
  return 0;
}
