#include <bits/stdc++.h>
using namespace std;
template <typename Arg1>
void out(Arg1&& arg1) {
  cout << arg1 << '\n';
}
template <typename Arg1, typename... Args>
void out(Arg1&& arg1, Args&&... args) {
  cout << arg1 << ' ';
  out(args...);
}
template <typename T>
void outarr(vector<T> arr) {
  for (int i = 0; i < arr.size() - 1; ++i) cout << arr[i] << ' ';
  cout << arr.back() << '\n';
}
template <typename T>
void printV(vector<T> A) {
  if (A.empty())
    cerr << "EMTPY\n";
  else {
    cerr << "[";
    for (int i = 0; i < A.size() - 1; ++i) {
      cerr << A[i] << ", ";
    }
    if (A.size()) cerr << A.back() << "]\n";
  }
}
template <typename T>
void printVV(vector<vector<T>> A) {
  cerr << "[";
  for (auto v : A) {
    printV<T>(v);
  }
  cerr << "]";
}
template <typename Arg1>
void __f(const char* name, Arg1&& arg1) {
  cerr << name << ": " << arg1 << endl;
}
template <typename Arg1, typename... Args>
void __f(const char* names, Arg1&& arg1, Args&&... args) {
  const char* comma = strchr(names + 1, ',');
  cerr.write(names, comma - names) << ": " << arg1 << " |";
  __f(comma + 1, args...);
}
int main(int argc, char** argv) {
  ios::sync_with_stdio(false);
  cin.tie(0);
  int R;
  cin >> R;
  cout << M_PI * 2 * R << endl;
  return 0;
}
