A, B, K = gets.split.map(&:to_i) C = A.lcm(B) def f(x) a = x / A b = x / B c = x / C a + b - c end ok = 0 ng = 10 ** 18 while (ok - ng).abs >= 2 x = (ok + ng) / 2 if f(A * x) <= K ok = x else ng = x end end if f(A * ok) == K puts A * ok exit end ok = 0 ng = 10 ** 18 while (ok - ng).abs >= 2 x = (ok + ng) / 2 if f(B * x) <= K ok = x else ng = x end end puts B * ok