求大数幂塔运算结果最后一位数字,Python代码遇测试用例失败
幂塔运算最后一位数字计算问题
我正在解决幂塔运算问题,需计算表达式 x1 ^ (x2 ^ (x3 ^ (... ^ xn))) 的结果最后一位数字,其中x1、x2等为给定列表lst中的数字。
示例:
- 当
lst = [3, 4, 5]时,应返回1 - 当
lst = [499942, 898102, 846073]时,应返回6
我的Python代码通过了600余个不同长度的随机测试用例,但在[2, 2, 101, 2]和[12, 30, 21]这两个测试用例上失败。代码如下:
def last_digit(lst): result = 1 for num in reversed(lst): result = pow(num, result, 100) print(lst) return result%10
内容的提问来源于stack exchange,提问作者Stefan Glova
相关产品推荐
相关产品推荐

