CF1485A.Add and Divide

入门

通过率:0%

时间限制:1.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

You have two positive integers aa and bb.

You can perform two kinds of operations:

  • a=⌊ab⌋a = \lfloor \frac{a}{b} \rfloor (replace aa with the integer part of the division between aa and bb)
  • b=b+1b=b+1 (increase bb by 11)

Find the minimum number of operations required to make a=0a=0.

你有两个正整数 aa 和 bb。

你可以执行以下两种操作:

  • a=⌊ab⌋a = \lfloor \frac{a}{b} \rfloor(将 aa 替换为 aa 除以 bb 的整数部分)
  • b=b+1b = b + 1(将 bb 增加 11)

求使 a=0a = 0 所需的最少操作次数。

输入格式

The first line contains a single integer tt (1≤t≤1001 \le t \le 100) — the number of test cases.

The only line of the description of each test case contains two integers aa, bb (1≤a,b≤1091 \le a,b \le 10^9).

第一行包含一个整数 tt(1≤t≤1001 \le t \le 100)—— 测试用例的数量。

每个测试用例的描述仅有一行,包含两个整数 aa、bb(1≤a,b≤1091 \le a,b \le 10^9)。

输出格式

For each test case, print a single integer: the minimum number of operations required to make a=0a=0.

对于每个测试用例,输出一个整数:使 a=0a=0 所需的最少操作次数。

输入输出样例

  • 输入#1

    6
    9 2
    1337 1
    1 1
    50000000 4
    991026972 997
    1234 5678

    输出#1

    4
    9
    2
    12
    3
    1

说明/提示

In the first test case, one of the optimal solutions is:

  1. Divide aa by bb. After this operation a=4a = 4 and b=2b = 2.
  2. Divide aa by bb. After this operation a=2a = 2 and b=2b = 2.
  3. Increase bb. After this operation a=2a = 2 and b=3b = 3.
  4. Divide aa by bb. After this operation a=0a = 0 and b=3b = 3.

在第一个测试用例中,一种最优解如下:

  1. 将 aa 除以 bb。该操作后,a=4a = 4 且 b=2b = 2。
  2. 将 aa 除以 bb。该操作后,a=2a = 2 且 b=2b = 2。
  3. 将 bb 加 11。该操作后,a=2a = 2 且 b=3b = 3。
  4. 将 aa 除以 bb。该操作后,a=0a = 0 且 b=3b = 3。

输入解题思路,AI测评打分。不知道怎么写?

首页