CfzRound8平方根问题
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
<strong>题目描述</strong>
给定一个整数 ,你可以对其进行下面的两种操作:
- n &#92;leftarrow n+2,即将 增加 。
- 若 &#92;sqrt n 为整数,则 n &#92;leftarrow &#92;sqrt n,即将 开方。进行此操作后你获得 分。
你需要求出获得 分所至少需要进行的操作数量。
<strong>输入格式</strong>
本题包含多组测试数据。
输入的第一行包含两个非负整数 ,分别表示测试点编号与测试数据组数。 表示该测试点为样例。
接下来依次输入每组测试数据,对于每组测试数据:
- 共一行,包含两个正整数 。
<strong>输出格式</strong>
对于每组测试数据:
- 输出一行,包含一个整数,表示获得 分所至少需要进行的操作数量。
<strong>输入输出样例 #1</strong>
#<strong>输入 #1</strong>
0 5
6 1
1 3
14514 23333
2011112920110906 1
3 1919810233114514
#<strong>输出 #1</strong>
6
3
46860
15268726
7679240932458056
<strong>说明/提示</strong>
#<strong>样例 1 解释</strong>
本组样例包含 组测试数据。
- 对于第 组测试数据,依次进行 次第 种操作和 次第 种操作即可。可以证明至少需要进行 次操作。
- 对于第 组测试数据,进行 次第 种操作即可。可以证明至少需要进行 次操作。
#<strong>数据范围</strong>
对于所有测试数据,均有:
- 1 &#92;le t &#92;le 10^5;
- 1 &#92;le n,k &#92;le 10^{18}。
::cute-table{tuack}
| 测试点编号 | n &#92;le | k&#92;le | 特殊性质 |
|---|---|---|---|
| 是 | |||
| ^ | ^ | ||
| ^ | |||
| ^ | |||
| ^ | 否 | ||
| ^ | |||
- 特殊性质:保证 。