#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define PI 3.14159265
template<class T> bool ckmin(T& a, const T& b) { return b < a ? a = b, 1 : 0; }
template<class T> bool ckmax(T& a, const T& b) { return a < b ? a = b, 1 : 0; }

int main()  {
    ios_base::sync_with_stdio(0);
    cin.tie(0);cout.tie(0);
    ll l, ans =0;
    cin >> l;
    ll last = 1;
    for(int i = 11; i > 0; i--) {
        ans = (last*(l - i))/(12-i);
        last = ans;
    }
    cout << ans;
}

#include <bits/stdc++.h>
using namespace std;
#define _GLIBCXX_DEBUG
#define rep(i, n) for (int i = 0; i < (int)(n); i++)
#define all(v) v.begin(), v.end()
using vi  = vector<int64_t>;
using vvi = vector<vi>;
using vc  = vector<char>;
using vvc = vector<vc>;
using vd  = vector<long double>;
using vvd = vector<vd>;
using pii = pair<int64_t, int64_t>;
using vp  = vector<pii>;
using vvp = vector<vp>;
int64_t INF = 1e18;
int64_t mod = 1e9 + 7;

int main() {
  int64_t l;
  cin >> l;

  int64_t half;
  vi pre_ans(210, 0);
  for (int i = 2; i <= 190; i++) {
    for (int j = 2; j <= 190; j++) {
      for (int k = 2; k <= 190; k++) {
        half = i + j + k;
        if (half > l - 6) continue;
        
        pre_ans[half] += (i-1) * (j-1) * (k-1);
      }
    }
  }
  int64_t ans = 0;
  for (int i=6; i <= l-6;i++) {
    ans += pre_ans[i] * pre_ans[l-i];
  }
  cout << ans << endl;
}
