可以看看为啥通过0不呢: def cal(x): if x == 1: return 0 temp = x i = 2 divisors = [] while True: if i > x//i: break while temp % i == 0: divisors.append(i) temp = temp // i i += 1 if temp > 1: divisors.append(temp) return sum(divisors)-1 n = int(input()) a = [int(x) for x in input().split()] a = [cal(x) for x in a] print(sum(a))