#include <bits/stdc++.h>
using namespace std;
int binarySearch(int arr[], int l, int r, int x) {
  while (l <= r) {
    int m = l + (r - l) / 2;
    if (arr[m] == x) return m;
    if (arr[m] < x)
      l = m + 1;
    else
      r = m - 1;
  }
  return -1;
}
bool IsPrime(int number) {
  if (number < 2) return false;
  if (number == 2) return true;
  if (number % 2 == 0) return false;
  for (int i = 3; (i * i) <= number; i += 2) {
    if (number % i == 0) return false;
  }
  return true;
}
int ncr(int n, int k) {
  if (k == 0 || k == n) return 1;
  return ncr(n - 1, k - 1) + ncr(n - 1, k);
}
char fun(int a) {
  if (a == 0) {
    return 'R';
  }
  if (a == 1) {
    return 'G';
  }
  return 'B';
}
long long dig(long long n) {
  long long ans = 0;
  while (n > 0) {
    n /= 10;
    ans++;
  }
  return ans;
}
bool check(string second, string t, int s1, int t1, map<char, int> &make_pair) {
  if (t1 == -1) {
    if (s1 == -1) {
      return 1;
    } else {
      return 0;
    }
  }
  if (second[s1] == t[t1]) {
    return check(second, t, s1 - 1, t1 - 1, make_pair);
  } else {
    if (make_pair[t[t1]]) {
      make_pair[t[t1]]--;
      return check(second, t, s1, t1 - 1, make_pair);
    } else {
      return 0;
    }
  }
}
long long int fun2(long long int &mx, long long int &mn) {
  if (mn == 0 || mx <= 1) {
    return 0;
  }
  long long int a = min(mx / 2, mn);
  long long int p = mx, q = mn;
  mx = max(p - 2 * a, q - a), mn = min(p - 2 * a, q - a);
  return a + fun2(mx, mn);
}
long long int fun(long long int &mx, long long int &mn) {
  long long int r = min(mx / 2, min(mn, mx - mn));
  mx -= 2 * r, mn -= r;
  return r;
}
long long int fun1(long long int &mx, long long int &mn) {
  long long int r = min(mn / 3, mx / 3);
  mx = mx - 3 * r, mn = mn - 3 * r;
  return 2 * r;
}
bool check(vector<vector<int> > &vec, vector<int> &v, int second) {
  vector<int> v1 = vec[second];
  bool ans = 1;
  for (int i = 0; i < 26; i++) {
    if (v1[i] < v[i]) {
      ans = 0;
      break;
    }
  }
  return ans;
}
void fans(int &ans, vector<vector<int> > &vec, vector<int> &v, int second,
          int e) {
  if (second > e) {
    return;
  }
  if (second == e) {
    if (check(vec, v, second)) {
      ans = min(ans, second + 1);
    }
    return;
  }
  int m = (second + e) / 2;
  if (check(vec, v, m)) {
    ans = min(ans, m + 1);
    fans(ans, vec, v, second, m - 1);
    return;
  } else {
    fans(ans, vec, v, m + 1, e);
    return;
  }
}
int main() {
  ios_base::sync_with_stdio(false);
  long long int n, i, sum = 0, mx = -1, val, j, m;
  cin >> n;
  cout << (n / 2) * 3;
  return 0;
}
