def factorization(n): arr = dict() temp = n for i in range(2, int(-(-n ** 0.5 // 1)) + 1): if temp % i == 0: cnt = 0 while temp % i == 0: cnt += 1 temp //= i arr[i] = cnt if temp != 1: arr[temp] = 1 if not arr and n != 1: arr[n] = 1 return arr def f(n, m): """n! が m**x で割り切れる最大のx""" res = 0 while n: n //= m res += n return res N, K, M = map(int, input().split()) fac = factorization(M) ans = float("inf") for k, v in fac.items(): ans = min(ans, (f(N, k) - f(K, k) - f(N - K, k)) // v) print(ans)