#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll prim[20] = {2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61};
int main()
{
ll n, i, j, k, ans;
while(scanf("%lld", &n) != EOF)
{
ans = 1;
for(i = 0;; i++)
{
ll num = (ll)pow(n, 1.0 / prim[i]);
if(num <= 1)break;
else ans += num - 1;
for(j = i + 1;; j++)
{
ll num = (ll)pow(n, 1.0 / (prim[i] * prim[j]));
if(num <= 1)break;
else ans -= num - 1;
for(k = j + 1;; k++)
{
ll num = (ll)pow(n, 1.0 / (prim[i] * prim[j] * prim[k]));
if(num <= 1)break;
else ans += num - 1;
}
}
}
printf("%lld\n", ans);
}
return 0;
}