Problem List


I would have absolutely tried to brute force it with a recurrence relation had I not seen the exact formula just a couple days before.
O(log n) O(log n)func myPow(x float64, n int) float64 {
if n <= 1 {
return baseCase(x,n)
}
if isEven(n) {
return myPow(x*x, n / 2)
}
return myPow(x*x, n / 2) * x
}
func isEven(n int) bool {
return n % 2 == 0
}
func baseCase(x float64, n int) float64 {
if n < 0 {
return myPow(1/x, n * -1)
}
if n == 0 {
return 1
}
return x
}