#include <bits/stdc++.h>
using namespace std;
mt19937_64 mt(time(0));
set<pair<long long, long long> > dp[49];
void insert(set<pair<long long, long long> >& table, long long a, long long b) {
  if (table.empty()) {
    table.insert({a, b});
    return;
  }
  auto it = table.lower_bound({b, LLONG_MAX});
  while (it != table.begin()) {
    it--;
    if (it->second < a) break;
    a = min(it->first, a);
    b = max(it->second, b);
    if (it == table.begin()) {
      table.erase(it);
      break;
    } else {
      table.erase(it++);
    }
  }
  table.insert({a, b});
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  cout.precision(10);
  cout << fixed;
  long long n;
  cin >> n;
  for (int i = 0; i <= min(48LL, n); i++) {
    for (int j = 0; j <= 8 && i + j <= n; j++) {
      int tmp = i * 9 + j * 4;
      long long a = tmp / 49;
      long long b = n - i - j + tmp / 49;
      insert(dp[tmp % 49], a, b);
    }
  }
  long long ret = 0;
  for (int i = 0; i < 49; i++) {
    for (auto item : dp[i]) {
      ret += item.second - item.first + 1;
    }
  }
  cout << ret << endl;
  return 0;
}
