import sys input = sys.stdin.readline N,K,M=map(int,input().split()) x=M # 素因数分解 import math L=int(math.sqrt(x)) FACT=dict() for i in range(2,L+2): while x%i==0: FACT[i]=FACT.get(i,0)+1 x=x//i if x!=1: FACT[x]=FACT.get(x,0)+1 LANS=1<<65 for f in FACT: ANS=0 for i in range(1,65): if pow(f,i)>10**18: break ANS+=N//pow(f,i) ANS-=K//pow(f,i) ANS-=(N-K)//pow(f,i) LANS=min(LANS,ANS//FACT[f]) print(LANS)