#include <iostream>
#include <vector>
using namespace std;
const int N = 1000010;
int lp[N+1];
vector<int> pr;
void init()
{
for (int i=2; i<=N; ++i)
{
if (lp[i] == 0)
{
lp[i] = i;
pr.push_back (i);
}
for (int j=0; j<pr.size() && pr[j]<=lp[i] && i*pr[j]<=N; ++j)
lp[i * pr[j]] = pr[j];
}
}
int count(int n)
{
int ans = 0;
int curprime = 0;
while (n!=1)
{
int minp = lp[n];
if (minp != curprime) ++ans, curprime = minp;
n/=minp;
}
return ans;
}
int f(int a, int b, int c)
{
int cnt = 0;
for (int i = a; i <= b; ++i)
if (count(i)==c)
++cnt;
return cnt;
}
int main()
{
init();
int a, b, c;
cin>>a>>b>>c;
cout<<f(a,b,c);
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY29uc3QgaW50IE4gPSAxMDAwMDEwOwppbnQgbHBbTisxXTsKdmVjdG9yPGludD4gcHI7Cgp2b2lkIGluaXQoKQp7CiAgICBmb3IgKGludCBpPTI7IGk8PU47ICsraSkgCgl7CgkJaWYgKGxwW2ldID09IDApIAoJCXsKCQkJbHBbaV0gPSBpOwoJCQlwci5wdXNoX2JhY2sgKGkpOwoJCX0KCQlmb3IgKGludCBqPTA7IGo8cHIuc2l6ZSgpICYmIHByW2pdPD1scFtpXSAmJiBpKnByW2pdPD1OOyArK2opCgkJCWxwW2kgKiBwcltqXV0gPSBwcltqXTsKCX0KfQoKCmludCBjb3VudChpbnQgbikKewoJaW50IGFucyA9IDA7CglpbnQgY3VycHJpbWUgPSAwOwoJd2hpbGUgKG4hPTEpCgl7CgkJaW50IG1pbnAgPSBscFtuXTsKCQlpZiAobWlucCAhPSBjdXJwcmltZSkgKythbnMsIGN1cnByaW1lID0gbWlucDsKCgkJbi89bWlucDsKCX0KCXJldHVybiBhbnM7Cn0KCmludCBmKGludCBhLCBpbnQgYiwgaW50IGMpCnsKCWludCBjbnQgPSAwOwoJZm9yIChpbnQgaSA9IGE7IGkgPD0gYjsgKytpKQoJCWlmIChjb3VudChpKT09YykKCQkJKytjbnQ7CglyZXR1cm4gY250Owp9CgoKaW50IG1haW4oKQp7Cglpbml0KCk7CglpbnQgYSwgYiwgYzsgCgljaW4+PmE+PmI+PmM7Cgljb3V0PDxmKGEsYixjKTsKfQo=