#include <bits/stdc++.h>
using namespace std;
static const long long MAX = 1000000;
static const long long INFTY = 1e12;
static const long long MOD = 1000000007;
template <typename T>
inline string toString(const T &a) {
  ostringstream oss;
  oss << a;
  return oss.str();
};
struct edge {
  long long to, cost;
};
using Graph = vector<vector<int>>;
using _Graph = vector<vector<edge>>;
const int dx[4] = {1, 0, -1, 0};
const int dy[4] = {0, 1, 0, -1};
vector<bool> seen;
vector<int> colors;
int H, W, N;
int sx, sy, gx, gy;
vector<vector<char>> field;
vector<vector<int>> dist;
deque<pair<int, int>> que;
const int INF = 100000000;
int main() {
  int R;
  cin >> R;
  double ans = 2 * 3.141592 * R;
  cout << ans << endl;
}
