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

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

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

Щоб добути квадратний корiнь з десяткового дробу (наприклад, \textbf{65432.109}), його запис розбивають праворуч i лiворуч вiд десяткової крапки на гранi, що мiстять по \textbf{2} цифри. У крайнiй лiвiй гранi може виявитися i одна цифра (\textbf{6}). Перша цифра кореня (\textbf{2}) знаходиться як найбiльша з усiх тих цифр, квадрати яких не перевищують першої гранi (\textbf{6}). Потiм вiд першої гранi вiднiмають квадрат першої цифри кореня (\textbf{4}), i до рiзницi приписують праворуч (зносять) наступну грань (\textbf{54}). Лiворуч вiд отриманого числа (\textbf{254}) пишуть подвоєну першу цифру кореня (\textbf{4}), а за наступну цифру (\textbf{5}) беруть найбiльшу з тих, добуток яких на число, утворене приписуванням її до подвоєної першої цифри праворуч, (\textbf{45} ∙ \textbf{5 }= \textbf{225}) не перевищує результату приписування до попередньої рiзницi вiдповiдної гранi (\textbf{254}). Цю цифру (\textbf{5}) записують пiсля першої цифри кореня i т.д. Десяткова крапка у коренi ставиться тодi, коли зноситься перша грань праворуч вiд десяткової крапки числа. \includegraphics{https://static.e-olymp.com/content/5d/5d7e07b4c4602891c2f72d1f1383dde88d5c5ac4.jpg} Створiть програму, яка вираховує корiнь квадратний додатного десяткового дробу. \InputFile Єдиний рядок мiстить у вказаному порядку скiнченний або перiодичний додатний десятковий дрiб (всього - до \textbf{1000 }символiв разом з десятковою крапкою) \textbf{a} та натуральне число \textbf{n}, яке не перевищує \textbf{100}. \OutputFile Єдиний рядок має мiстити подання кореня квадратного \textbf{а} скiнченним чи перiодичним десятковим дробом, якщо це можливо, iнакше - корiнь квадратний числа \textbf{a} з недостачею з точнiстю до \textbf{n} цифр пiсля десяткової крапки.
Ліміт часу 1 секунда
Ліміт використання пам'яті 64 MiB
Вхідні дані #1
25 6
Вихідні дані #1
5