q = gets.to_i

q.times do
  n, k = gets.split.map(&:to_i)
  if k == 1 then
    puts (n - 1)
  else
    d = 0
    while (k ** (d + 1) - 1) / (k - 1) < n do
      d += 1
    end
    puts d
  end
end