问题描述
在平面直角坐标系上,你初始在点(1,1),你每秒可以向 x轴正方向移动恰好一个单位,或向 y轴正方向移动恰好一个单位。
你只能停留在坐标均为整数的点上
你的目标是逃到双曲线 y=k/x上,并且能够停留,请问你至少需要多少时间?
输入格式
输入一个整数k(2≤k≤10^12)
输出格式
输出一个整数,求最短时间
输入样例
10
输出样例
5
代码
import math
k=int(input())
z=10000000000000000000000
K=int(math.sqrt(k))+1
for i in range(1,K):
y=k/i
x=i
if x+y-2<z and int(y)==y:
z=x+y-2
print(int(z))