import sys sys.setrecursionlimit(10**7) from functools import lru_cache @lru_cache(maxsize=None) def f(x, c): if x <= 0: return 0 if x % c == 0: return min(f(x//c, c) + 1, (x + c - 2)//(c - 1)) else: return min(f(x - x % c , c) + 1, (x + c - 2)//(c - 1)) Q = int(input()) for _ in range(Q): A, B, C = map(int, input().split()) if C == 1: print(-1) else: print(f(A, C) * B)