10進数が与えられた場合、の平方根が整数の範囲内にk
なるn
ような最小の整数を見つけます。ただし、距離はゼロ以外である必要があり、完全な正方形にすることはできません。n
k
n
与えられk
た10進数または分数(どちらか簡単な方)、など、の平方根と平方根に最も近い整数の差がゼロ以下で0 < k < 1
あるn
ように最小の正の整数を出力する。n
n
k
i
がの平方根に最も近い整数である場合n
、最初のn
whereを探しています0 < |i - sqrt(n)| <= k
。
ルール
- 言語の整数以外の数値の不十分な実装を使用して、問題を単純化することはできません。
- それ以外の場合は
k
、浮動小数点の丸めなどの問題が発生しないと想定できます。
テストケース
.9 > 2
.5 > 2
.4 > 3
.3 > 3
.25 > 5
.2 > 8
.1 > 26
.05 > 101
.03 > 288
.01 > 2501
.005 > 10001
.003 > 27888
.001 > 250001
.0005 > 1000001
.0003 > 2778888
.0001 > 25000001
.0314159 > 255
.00314159 > 25599
.000314159 > 2534463
カンマ区切りのテストケース入力:
0.9, 0.5, 0.4, 0.3, 0.25, 0.2, 0.1, 0.05, 0.03, 0.01, 0.005, 0.003, 0.001, 0.0005, 0.0003, 0.0001, 0.0314159, 0.00314159, 0.000314159
これはcode-golfであるため、バイト単位の最短回答が優先されます。