Étant donné un nombre décimal k
, recherchez le plus petit entier n
tel que la racine carrée de n
soit à l'intérieur k
d'un entier. Cependant, la distance doit être non nulle - n
ne peut pas être un carré parfait.
Étant donné k
, un nombre décimal ou une fraction (selon ce qui est plus facile pour vous), tel que 0 < k < 1
, affichez le plus petit entier positif de n
telle sorte que la différence entre la racine carrée de n
et l'entier le plus proche de la racine carrée de n
soit inférieure ou égale à k
mais non nulle .
Si i
est l'entier le plus proche de la racine carrée de n
, vous recherchez le premier n
où 0 < |i - sqrt(n)| <= k
.
Règles
- Vous ne pouvez pas utiliser l'implémentation insuffisante d'un langage de nombres non entiers pour banaliser le problème.
- Sinon, vous pouvez supposer que
k
cela ne causera pas de problèmes avec, par exemple, l'arrondi à virgule flottante.
Cas de test
.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
Entrées de cas de test séparées par des virgules:
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
C'est le code-golf , donc la réponse la plus courte en octets l'emporte.