#include <iostream>
#include <cstring>
using namespace std;
int a[120], b[120], c[120], ans[120];
int main() {
int n, m = 1;
int lena, lenb = 1, lenc = 1;
scanf("%d", &n);
b[1] = 1;
for (int i = 1; i <= n; i++) {
lena = 0;
int p = i;
while (p > 0) {
a[++lena] = p % 10;
p /= 10;
}
for (int j = 1; j <= lena; j++) {
for (int k = 1; k <= lenb; k++) {
c[j + k - 1] = a[j] * b[k];
}
}
lenc = lena + lenb;
for (int j = 1; j < lenc; j++) {
if (c[j] >= 10) {
c[j + 1] += c[j] / 10;
c[j] %= 10;
}
}
m = max(m, lenc);
for (int j = 1; j <= m; j++) {
ans[j] += c[j];
}
for (int j = 1; j < m; j++) {
if (ans[j] >= 10) {
ans[j + 1] += ans[j] / 10;
ans[j] %= 10;
}
}
lenb = lenc;
for (int j = 1; j <= lenc; j++) {
b[j] = c[j];
}
for (int i = 0; i < 120; i++) {
c[i] = 0;
}
}
while (ans[m] == 0 && m != 1)
{
m--;
}
for (int i = m; i >= 1; i--)
{
printf("%d", ans[i]);
}
return 0;
}