#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include template inline bool chmax(T& a, T b) { if (a < b) { a = b; return 1; } return 0; } template inline bool chmin(T& a, T b) { if (a > b) { a = b; return 1; } return 0; } const long long INF = 1LL << 60; const long long MOD = 1000000007LL; const long long MAX = 500000LL; using namespace std; typedef unsigned long long ull; typedef long long ll; ll N; vector> dp; int main() { cin >> N; dp = vector>(8, vector(6 * N + 1, 0)); for (ll i = 0; i <= N; i++) { dp[0][i] = 1; } for (ll i = 1; i < 8; i++) { for (ll j = 0; j <= 6 * N; j++) { for (ll k = 0; k <= N; k++) { if (j - k < 0) break; dp[i][j] += dp[i - 1][j - k]; } } } cout << dp[7][6 * N] << endl; return 0; }