eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Корiнь квадратний

Корiнь квадратний

Лимит времени 1 секунда
Лимит использования памяти 64 MiB

Щоб добути квадратний корiнь з десяткового дробу (наприклад, 65432.109), його запис розбивають праворуч i лiворуч вiд десяткової крапки на гранi, що мiстять по 2 цифри. У крайнiй лiвiй гранi може виявитися i одна цифра (6). Перша цифра кореня (2) знаходиться як найбiльша з усiх тих цифр, квадрати яких не перевищують першої гранi (6). Потiм вiд першої гранi вiднiмають квадрат першої цифри кореня (4), i до рiзницi приписують праворуч (зносять) наступну грань (54). Лiворуч вiд отриманого числа (254) пишуть подвоєну першу цифру кореня (4), а за наступну цифру (5) беруть найбiльшу з тих, добуток яких на число, утворене приписуванням її до подвоєної першої цифри праворуч, (455 = 225) не перевищує результату приписування до попередньої рiзницi вiдповiдної гранi (254). Цю цифру (5) записують пiсля першої цифри кореня i т.д. Десяткова крапка у коренi ставиться тодi, коли зноситься перша грань праворуч вiд десяткової крапки числа.

Створiть програму, яка вираховує корiнь квадратний додатного десяткового дробу.

Входные данные

Єдиний рядок мiстить у вказаному порядку скiнченний або перiодичний додатний десятковий дрiб (всього - до1000 символiв разом з десятковою крапкою) a та натуральне число n, яке не перевищує 100.

Выходные данные

Єдиний рядок має мiстити подання кореня квадратного а скiнченним чи перiодичним десятковим дробом, якщо це можливо, iнакше - корiнь квадратний числа a з недостачею з точнiстю до n цифр пiсля десяткової крапки.

Пример

Входные данные #1
25 6
Выходные данные #1
5