Напишите рекурсивную функцию, возводящую число a в степень n. Гарантируется, что все числа "помещаются" в стандартные вещественные (a и ответ) и целые (n) типы.
Вводится 2 числа - a и n (число n может быть отрицательным).
Необходимо вывести значение an
2 -1
0.5
Напишите функцию быстрого возведения в степень. Количество действий должно быть пропорционально двоичному логарифму n.
Вводится 2 числа - a (вещественное) и n (целое неотрицательное).
Необходимо вывести значение an.
2 2
4
Головоломка "Ханойские башни" состоит из трех колышков, пронумерованных числами 1, 2, 3. На колышек 1 надета пирамидка из n дисков различного диаметра в порядке возрастания диаметра. Диски можно перекладывать с одного колышка на другой по одному, при этом диск нельзя класть на диск меньшего диаметра. Необходимо переложить всю пирамидку с колышка 1 на колышек 2 за минимальное число перекладываний.
Напишите программу, которая решает головоломку для данного числа дисков n.
Вводится 1 число n.
Необходимо вывести последовательность перекладываний в формате "Disk 1 move from 1 to 2"
(диск 1 переложить c колышка 1 на колышек 2), печатая по одной инструкции в строке. Диски пронумерованы числами от 1 до n в порядке возрастания диаметров.
2
Disk 1 move from 1 to 3 Disk 2 move from 1 to 2 Disk 1 move from 3 to 2
Игра для двух игроков определяется её деревом. Соперники делают ходы по очереди. Первый игрок начинает игру. Игра кончается или вничью, или победой одного из игроков. Листья дерева этой игры могут иметь значения, равные одному из трёх чисел: +1 - победа первого игрока, -1 - победа второго игрока, 0 - ничья. Ваша задача - определить, кто выиграет, если оба противника следуют правильной стратегии.
Узлы дерева пронумерованы последовательными целыми числами. Корень дерева всегда имеет номер 1. Первая строка входного файла содержит целое \(N\) - число узлов в дереве игры. Следующая \(N\) - 1 строка описывает узлы - одна строка для каждого узла (за исключением первого). Вторая строка содержит описание второго узла дерева, третья - третьего узла и т.д. Если узел является листом, первый символ строки - \(L\), затем идёт пробел, затем номер родительского узла, ещё пробел и результат игры (+1 - победа первого игрока, -1 - победа второго, 0 - ничья). Если узел внутренний, то строка содержит N - первый символ, затем пробел и номер родительского узла. 2 <= \(N\) <= 1000.
Выводится +1, если выигрывает первый игрок, -1, если второй, и 0 - в случае ничейного исхода.
7 N 1 N 1 L 2 -1 L 2 +1 L 3 +1 L 3 +1
+1
7 N 1 N 1 L 2 -1 L 2 +1 L 3 +1 L 3 0
0
7 N 1 N 1 L 2 -1 L 2 +1 L 3 +1 L 3 -1
-1
Ввести в символьной форме два многочлена от x с целыми коэффициентами и вывести их произведение в порядке убывания степеней - также в символьной форме.
Ограничения: степень исходных многочленов не более 10, коэффициенты исходных многочленов по модулю не более 104.
В двух строках находятся многочлены.
В единственной строке выводится многочлен.
2x^3+3x^2+4x+5 1
2x^3+3x^2+4x+5
-11x^3-12x^2-13x-14 1
-11x^3-12x^2-13x-14