def factorization(n): arr = [] 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.append([i, cnt]) if temp!=1: arr.append([temp, 1]) if arr==[]: arr.append([n, 1]) return arr N, K, M = map(int, input().split()) N_factors = factorization(N) NK_factors = [] for p, c in N_factors: if p > 1: NK_factors.append((p, c*K)) import sys sys.setrecursionlimit(10**7) def dfs(product, idx): global ans if idx == L: if product <= M: ans += 1 return for i in range(NK_factors[idx][1]+1): if product*pow(NK_factors[idx][0], i) <= M: dfs(product*pow(NK_factors[idx][0], i), idx+1) else: #枝刈り break L = len(NK_factors) ans = 0 dfs(1, 0) print(ans)