#include <bits/stdc++.h>
using namespace std;
long long gcd(long long x, long long y) {
  if (y == 0) return x;
  return gcd(y, x % y);
}
long long absol(long long x) {
  if (x < 0) {
    return -x;
  }
  return x;
}
priority_queue<pair<long long, long long>, vector<pair<long long, long long> >,
               greater<pair<long long, long long> > >
    pq;
long long expo(long long b, long long n, long long m) {
  long long r, p;
  p = 1;
  b = b % m;
  while (n > 0) {
    r = n % 2;
    if (r == 1) p = ((p % m) * (b % m)) % m;
    b = ((b % m) * (b % m)) % m;
    n = n / 2;
  }
  return (p % m);
}
long long divide1(long long a, long long b, long long m) {
  long long r, p, n;
  p = a % m;
  n = m - 2;
  while (n > 0) {
    r = n % 2;
    if (r == 1) p = ((p % m) * (b % m)) % m;
    b = ((b % m) * (b % m)) % m;
    n = n / 2;
  }
  return (p % m);
}
int main(int argc, char const *argv[]) {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL), cout.tie(NULL);
  long double n, r;
  cin >> n >> r;
  cout << setprecision(10)
       << (r * sin(3.1415926535897 / n)) / (1 - sin(3.1415926535897 / n))
       << "\n";
  return 0;
}
