Коли ви округляєте число, якщо наступна цифра - >= 5ви додаєте 1. Наприклад:
3.1415926535 rounded to 1dp is 3.1
3.1415926535 rounded to 4dp is 3.1416 <-- Note the 5 changed to 6
3.1415926535 rounded to 5dp is 3.14159
3.1415926535 rounded to 9dp is 3.141592654 <-- Note the 3 changed to 4
Ваша задача полягає в тому, щоб отримати як ціле число введення і виведення кількість десяткових знаків, перед якими вам доведеться округлити квадратний корінь числа - тобто кількість десяткових знаків перед чисельною цифрою, яка >= 5має місце.
Ціле число буде від 0 до 100 000 включно, тому для крайового випадку 59752 вам потрібно підтримати 17 десяткових знаків (для перевірки 17-го).
Якщо мова програмування не може змінити кількість десяткових знаків, ви можете відобразити "?" повідомлення користувачеві.
Приклад:
Input Root Output
5 -> 2.23 606797749979 -> 2
41 -> 6.40312423 743284 -> 8 (Largest gap under 100)
596 -> 24.4131112314 674 -> 10 (Largest gap under 1000)
59752 -> 244.44222221212112029 -> 16 (Largest gap under 100000)
Робіть те, що ви хочете, на ідеальних квадратах.
Це код-гольф, тому виграє найкоротший код.
Для всіх, хто цікавиться, число 310 617 є найбільшим під 1 000 000 і має 18, перш ніж ви досягнете цифри >= 5.