//#include<bits/stdc++.h>
#include <algorithm>　　　 //STL通用算法
#include <bitset>　　　　　//STL位集容器
#include <cctype>                //字符处理
#include <cerrno>　　　　 //定义错误码
#include <clocale>　　　　//定义本地化函数
#include <cmath>　　　　　//定义数学函数
#include <complex>　　　　 //复数类
#include <cstdio>　　　　//定义输入／输出函数
#include <cstdlib>　　　　//定义杂项函数及内存分配函数
#include <cstring>　　　　//字符串处理
#include <ctime>　　　　　//定义关于时间的函数
#include <deque>　　　　　 //STL双端队列容器
#include <exception>　　　 //异常处理类
#include <fstream>　　　//文件输入／输出
#include <functional>　　　//STL定义运算函数（代替运算符）
#include <limits>　　　　//定义各种数据类型最值常量
#include <list>　　　　　　//STL线性列表容器
#include <map>　　　　　　 //STL 映射容器
#include <iomanip>　　　//参数化输入／输出
#include <ios>　　　　　　//基本输入／输出支持
#include<iosfwd>　　　　　//输入／输出系统使用的前置声明
#include <iostream>　　　//数据流输入／输出
#include <istream>　　　　 //基本输入流
#include <ostream>　　　　 //基本输出流
#include <queue>　　　　　 //STL队列容器
#include <set>　　　　　　 //STL 集合容器
#include <sstream>　　　　//基于字符串的流
#include <stack>　　　　　 //STL堆栈容器　　　　
#include <stdexcept>　　　 //标准异常类
#include <streambuf>　　　//底层输入／输出支持
#include <string>　　　　　//字符串类
#include <utility>　　　　 //STL通用模板类
#include <vector>　　　　　//STL动态数组容器
#include <cwchar>　　　　//宽字符处理及输入／输出
#include <cwctype>　　　　//宽字符分类
using namespace std;
int a[20]={0},three=0,five=0,seven=0,za=1,weishu=0;
void jingwei(int i)
{
    int x;
    x=a[i-1]/10;
    a[i-1]%=10;
    if(a[i-1]==3)
    {
        three++;
    }
    else if(a[i-1]==5)
    {
        five++;
    }
    else if(a[i-1]==7)
    {
        seven++;
    }
    else{za++;}
    ////////////
    if(a[i]==3)
    {
        three--;
    }
    else if(a[i]==5)
    {
        five--;
    }
    else if(a[i]==7)
    {
        seven--;
    }
    else
    {
        za--;
    }
    a[i]+=x;
    if(a[i]>9)
    {
        if(i+1>weishu)
        {
            za++;
            weishu++;
        }
        jingwei(i+1);
    }
    else
    {
         if(a[i]==3)
        {
        three++;
        }
        else if(a[i]==5)
        {
        five++;
        }
        else if(a[i]==7)
        {
        seven++;
        }
        else
        {
            za++;
        }
    }
}
void jia1(void)
{
    if(a[0]==3)
    {
        three--;
    }
    else if(a[0]==5)
    {
        five--;
    }
    else if(a[0]==7)
    {
        seven--;
    }
    else
    {
        za--;
    }
    a[0]++;
    if(a[0]>9)
    {
        if(1>weishu)
        {
            za++;
            weishu++;
        }
        jingwei(1);
    }
    else
    {
        if(a[0]==3)
    {
        three++;
    }
    else if(a[0]==5)
    {
        five++;
    }
    else if(a[0]==7)
    {
        seven++;
    }
    else
    {
        za++;
    }
    }
}

int main()
{

    int i,n;
    int output=0;
    scanf("%d",&n);
    for(i=1;i<=n;i++)
    {
        jia1();
        if(three&&five&&seven&&!za)
        {
            output++;
        }
    }
    printf("%d",output);
    return 0;
}
