def func(K,n): return (K**n-1)/(K-1) def func_bisect(K,N): left = 1 right = 10 eps = 0.1 while left < right: mid = (left+right)/2 #print(func(K,mid),left,mid,right) if abs(N -func(K,mid)) < eps: return mid elif N -func(K,mid) > eps: left = mid elif func(K,mid) - N > eps: right = mid Q = int(input()) for i in range(Q): N,K = map(int,input().split()) if K == 1: print(N-1) else: print(int(func_bisect(K,N)))