#include <bits/stdc++.h>
using namespace std;
long long n, extra = 0;
void check(string x) {
  int i, f[3] = {0};
  for (i = 0; i < x.size(); i++) {
    if (x[i] == '3')
      f[0]++;
    else if (x[i] == '5')
      f[1]++;
    else
      f[2]++;
  }
  if (f[0] && f[1] && f[2]) {
    long long num = 0;
    for (i = x.size() - 1; i >= 0; i--) num = num * 10 + (x[i] - '0');
    if (num <= n) extra++;
  }
  return;
}
void numgen(string t, int d) {
  if (d == 0) {
    check(t);
    return;
  }
  numgen(t + '7', d - 1);
  numgen(t + '5', d - 1);
  numgen(t + '3', d - 1);
}
int main() {
  ios::sync_with_stdio(false), cin.tie(0);
  ;
  long long i, ans = 0;
  cin >> n;
  if (n < 357)
    cout << "0\n";
  else {
    string p = to_string(n);
    for (i = 3; i < p.size(); i++)
      ans += i * (i - 1) * (i - 2) * (long long)pow(3, i - 3);
    numgen("", p.size());
    cout << ans + extra << '\n';
  }
}
