Exponentation rapide
Problem
Élever à une puissance est plus rapide que n
multiplications ! Pour cela, utilisez les relations de récurrence suivantes :
\(a^n=(a^2)^{n/2},\ for \ even \ n, \\ a^n=a \cdot a^{n-1 },\ pour \ impair \ n.\)
Mettre en œuvre l'algorithme d'exponentiation rapide. Si vous faites tout correctement, la complexité de votre algorithme sera O(logn)
.
Entrée
Le programme reçoit un nombre réel a
et un entier n
en entrée. Chaque numéro sur une ligne distincte.
Mentions légales
Sortie
\(a^n\).
Exemples
# |
Entrée |
Sortie |
1 |
2
7 |
128 |
2 |
1.00001
100000 |
2.71827 |
Запрещенные операторы: for
; while
; until
; math
; **
; pow