Potencia x elevado a n

Tiempo límite 2 s
Memoria límite 256 MB
Casos de prueba 5
Dificultad Medio Algoritmos
Mostrar (2) MatemáticasRecursión
Enviar solución

Puntos: 10

Tipos de problema
Lenguajes permitidos
C, C++, Java, Python, Rust

Calcula \(x^n\) para un real \(x\) y un entero \(n\) (que puede ser negativo o enorme). Con \(|n|\) hasta \(2^{31}\), multiplicar \(n\) veces es demasiado lento: hace falta exponenciación binaria, \(O(\log |n|)\).

Entrada

La primera línea tiene \(T\) \((1 \le T \le 10^4)\). Cada una de las siguientes \(T\) líneas tiene \(x\), con cinco decimales y \(|x| < 100\), y \(n\), con \(-2^{31} \le n \le 2^{31} - 1\). Si \(x = 0\), entonces \(n > 0\); si \(x \ne 0\), se garantiza que \(|x^n|\) está entre \(10^{-4}\) y \(10^4\).

Salida

Para cada caso, una línea con \(x^n\). Se acepta un error relativo o absoluto de hasta \(10^{-5}\).

Ejemplo 1

Entrada

3
2.00000 10
2.10000 3
2.00000 -2

Salida

1024.0000000000
9.2610000000
0.2500000000

Comentarios

No hay comentarios por el momento.