Задача 02A. Быстрое возведение в степень

Автор:Известная   Ограничение времени:2 сек
Входной файл:Стандартный вход   Ограничение памяти:512 Мб
Выходной файл:Стандартный выход  

Условие

Возводить в степень можно гораздо быстрее, чем за n умножений! Для этого нужно воспользоваться следующими рекуррентными соотношениями:

an = (a2)n / 2 при четном n,

an = a ⋅ an − 1 при нечетном n,

Реализуйте алгоритм быстрого возведения в степень. Если вы все сделаете правильно, то сложность вашего алгоритма будет O(nlog(n)).

Формат входных данных

Вводится действительное число a и целое неотрицательное число n.

Формат выходных данных

Выведите ответ на задачу с точностью до 6 знаков после запятой. Нельзя использовать стандартное возведение в степень.

Примеры тестов

Стандартный вход Стандартный выход
1
2
7
128
2
1.00001
100000
2.7182682372

0.050s 0.010s 13