#include <bits/stdc++.h>
using namespace std;
int n, ans, res[10];
bool ch() ;
void dfs(int rem, int k) {
if (rem == 0) {
if (k == 3 && ch()) {
ans++;
}
return ;
}
for (int i = rem; i >= 1; i--) {
if (k == 0) {
res[k] = i;
dfs(rem - i, k + 1);
} else if (i <= res[k - 1]) {
res[k] = i;
dfs(rem - i, k + 1);
}
}
return ;
}
bool ch() {
if (res[0] == res[1] || res[0] == res[2] || res[1] == res[2]) {
return 0;
}
for (int i = 0; i < 3; i++) {
int u = res[i];
while (u > 0) {
if (u % 10 == 3 || u % 10 == 7) {
return 0;
}
u /= 10;
}
}
return 1;
}
int main() {
scanf("%d", &n);
dfs(n, 0);
printf("%d", ans);
return 0;
}
记录传送门