#include <bits/stdc++.h>
using namespace std;
const int N = 100010;
int fa[N];
bool f[N];
int a,b,p,ans;
int find(int x)
{
return fa[x] == x ? x : fa[x] = find(fa[x]);
}
int main()
{
cin >> a >> b >> p;
ans = b - a + 1;
for(int i = a;i <= b;i++)
{
fa[i] = i;
}
for(int i = 2;i <= b;i++)
{
if(!f[i])
{
if(i >= p)
{
for(int j = i * 2;j <= b;j+=i)
{
f[j] = true;
if (j - i >= a && find(j) != find(j - i))
{
fa[find(j)] = find(j - 1);
ans--;
}
}
}
else
{
for(int j = i * 2;j <= b;j+=i)
{
f[j] = true;
}
}
}
}
cout << ans;
return 0;
}