def primefact(m):
  res=[]
  i=2
  while i*i<=m:
    if m%i!=0:
      i+=1
      continue
    ex=0
    while m%i==0:
      m//=i
      ex+=1
    res.append([i,ex])
    i+=1
  if m!=1:
    res.append([m,1])
  return res

def f(n,m):
  res=0
  while n>0:
    n//=m
    res+=n
  return res

N,K,M=map(int,input().split())
ps=primefact(M)
ans=10**18
for [p,e] in ps:
  ans=min(ans,(f(N,p)-f(K,p)-f(N-K,p))//e)
print(ans)