Loading

Leetcode - 50. Pow(x, n)

实现pow(x, n),即计算xn次幂函数(即,xn)。

示例 1:

输入:x = 2.00000, n = 10
输出:1024.00000

示例 2:

输入:x = 2.10000, n = 3
输出:9.26100

示例 3:

输入:x = 2.00000, n = -2
输出:0.25000
解释:2-2 = 1/22 = 1/4 = 0.25

提示:

  • -100.0 < x < 100.0
  • -231 <= n <= 231-1
  • -104 <= xn <= 104

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/powx-n
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

解1 2021/9/7 O(?)

def myPow(x: float, n: int) -> float:
    # 题目并没有说明结果保留小数点后几位,
    # 注意,内置函数pow计算浮点的时候,有浮点计算的通病,就是不精确,
    # 比如:pow(2.100,3)
    # =9.261000000000001
    # 看题目的示例,都是保留小数点后5位,那就保留5位吧,看ac不ac
    return float(format(pow(x,n),'0.5f'))

if __name__ == '__main__':
    print(myPow(2.0000,10))
    print(myPow(2.1000,3))
    print(myPow(2.1000,-2))
    print(myPow(2.0000,-2))

posted @ 2021-09-07 19:37  wwcg2235  阅读(33)  评论(0)    收藏  举报