lc-go/solutions/0/q50/solution.go
2026-01-07 18:04:39 +09:00

25 lines
260 B
Go

package q50
func myPow(x float64, n int) float64 {
neg := n < 0
if neg {
n = -n
}
var ret float64 = 1
for n > 0 {
v, p := x, 1
for p*2 < n {
p *= 2
v *= v
}
n -= p
ret *= v
}
if neg {
return 1 / ret
}
return ret
}
var _ = myPow