from collections import deque
def min_turns(h, d):
start = (0, h, 0)
q = deque([(0, h, 0, 0)])
visited = set([start])
while q:
pos, health, cons, turns = q.popleft()
if pos >= d:
return turns
new_state = (pos, health+1, 0)
if new_state not in visited:
visited.add(new_state)
q.append((pos, health+1, 0, turns+1))
cost = cons + 1
if health > cost:
new_state = (pos+1, health-cost, cons+1)
if new_state not in visited:
visited.add(new_state)
q.append((pos+1, health-cost, cons+1, turns+1))
t = int(input())
for _ in range(t):
h, d = map(int, input().split())
print(min_turns(h, d))
ZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgZGVxdWUKCmRlZiBtaW5fdHVybnMoaCwgZCk6CiAgICBzdGFydCA9ICgwLCBoLCAwKQogICAgcSA9IGRlcXVlKFsoMCwgaCwgMCwgMCldKQogICAgdmlzaXRlZCA9IHNldChbc3RhcnRdKQoKICAgIHdoaWxlIHE6CiAgICAgICAgcG9zLCBoZWFsdGgsIGNvbnMsIHR1cm5zID0gcS5wb3BsZWZ0KCkKCiAgICAgICAgaWYgcG9zID49IGQ6CiAgICAgICAgICAgIHJldHVybiB0dXJucwogICAgICAgIG5ld19zdGF0ZSA9IChwb3MsIGhlYWx0aCsxLCAwKQogICAgICAgIGlmIG5ld19zdGF0ZSBub3QgaW4gdmlzaXRlZDoKICAgICAgICAgICAgdmlzaXRlZC5hZGQobmV3X3N0YXRlKQogICAgICAgICAgICBxLmFwcGVuZCgocG9zLCBoZWFsdGgrMSwgMCwgdHVybnMrMSkpCgogICAgICAgIGNvc3QgPSBjb25zICsgMQogICAgICAgIGlmIGhlYWx0aCA+IGNvc3Q6IAogICAgICAgICAgICBuZXdfc3RhdGUgPSAocG9zKzEsIGhlYWx0aC1jb3N0LCBjb25zKzEpCiAgICAgICAgICAgIGlmIG5ld19zdGF0ZSBub3QgaW4gdmlzaXRlZDoKICAgICAgICAgICAgICAgIHZpc2l0ZWQuYWRkKG5ld19zdGF0ZSkKICAgICAgICAgICAgICAgIHEuYXBwZW5kKChwb3MrMSwgaGVhbHRoLWNvc3QsIGNvbnMrMSwgdHVybnMrMSkpCgoKdCA9IGludChpbnB1dCgpKQpmb3IgXyBpbiByYW5nZSh0KToKICAgIGgsIGQgPSBtYXAoaW50LCBpbnB1dCgpLnNwbGl0KCkpCiAgICBwcmludChtaW5fdHVybnMoaCwgZCkpCg==