#708. 空地上的祢豆子

空地上的祢豆子

题目描述

祢豆子突然在数轴上的点 00 醒来,拥有 hh 点生命值。她想要到达点 dd。在每个回合,她必须进行以下两种操作之一:

  • 在阴凉处休息,将当前生命值增加 11;
  • 从当前位置 xx 移动到 x+1x+1。

每次移动都会消耗生命值;若某次移动是连续移动序列中的第 jj 次连续移动,则该次移动会使生命值减少 jj 点。若移动后生命值降到 00 或更低,则该移动不能进行(即必须保证在移动之后生命值仍为正)。

例如:若祢豆子初始生命值 h=7h=7,且目标 d=4d=4,她的一种可行动作序列为:

  1. 从 00 走到 11,消耗 11 点,剩 66;
  2. 从 11 走到 22,消耗 22 点,剩 44;
  3. 从 22 走到 33,消耗 33 点,剩 11;
  4. 休息,生命值加 11,变为 22;
  5. 从 33 走到 44,由于这是新的连续移动序列第 11 次移动,消耗 11 点,剩 11。

请你求出祢豆子到达点 dd 所需的最少回合数。

输入格式

输入共 t+1t+1 行

  • 第一行:整数 tt,表示测试用例数(1≤t≤1041\le t\le 10^4)。
  • 接下来共 tt 行,每行一个测试用例。每个测试用例包含两个整数 hh 和 dd(1≤h,d≤1091\le h,d\le 10^9),分别表示初始生命值和目的地坐标。

输出格式

对于每个测试用例,输出一行:一个整数,表示祢豆子到达点 dd 所需的最少回合数。

样例输入

5
3 2
1 1
5 3
2 4
10 7

样例输出

3
2
4
7
10

说明

样例解释

  • 在第一个测试用例中, h=3h = 3 、 d=2d = 2 的操作如下:
  1. 从 00 移动到 11 ,生命值减少 11 。现在她在 11 点,生命值为 22 。
  2. 休息并恢复 11 点生命值。现在她位于 11 点,拥有 33 点生命值。
  3. 从 11 移动到 22 ,减少 11 点生命值。现在她位于 22 点,生命值为 22 。

总共 33 个回合。

  • 在第四个测试案例中, h=2h = 2 , d=4d = 4 的操作可能如下:
  1. 从 00 移动到 11 ,并将健康值减少 11 。现在她在 11 点,生命值为 11 。
  2. 休息并恢复 11 点生命值。现在她位于 11 点,拥有 22 点健康值。
  3. 从 11 移动到 22 ,减少 11 点生命值。现在她位于 22 点,生命值为 11 。
  4. 休息并恢复 11 点生命值。现在她位于 22 点,拥有 22 点健康值。
  5. 从 22 移动到 33 ,减少 11 点生命值。现在她位于 33 点,生命值为 11 。
  6. 休息并恢复 11 点生命值。现在她位于 33 点,拥有 22 点健康值。
  7. 从 33 移动到 44 ,生命值减少 11 。现在她位于 44 点,生命值为 11 。

总共 77 个回合。