gpt4 book ai didi

python - 时间限制,如何将大数的代码执行时间减少到十亿?

转载 作者:行者123 更新时间:2023-12-02 02:00:13 25 4
gpt4 key购买 nike

a, b = map(int, input().split())
s = 0
for i in range(a, b + 1):
g = 0
while i != 0:
k = i % 10
g = g + k
i = i // 10
if g % 2 == 0:
s = s + 1
print(s)

任务本身:计算从a到b的线段上数字之和为偶数的自然数的个数。

最佳答案

这里的想法不是循环遍历所有内容。

每隔一个数的数字之和为偶数:

101 -> even
102 -> odd
103 -> even

因此,要找到数字总和为偶数的数字数量,您所要做的就是(start-end)/2,然后考虑边缘情况,基本上如果您的数字start 和 end 的总和为偶数或奇数。

编辑:我错过了 10 年代的一个怪事。例如 29 和 30 都是奇数。因此,为了修正这一点,每组 10 个数字(例如 30-39)都有 5 个偶数和 5 个奇数。在您达到第一个 10 的倍数之前以及在您达到最后一个 10 - 1 的倍数之后,这会将您需要考虑的边缘情况增加到几个数字。

关于python - 时间限制,如何将大数的代码执行时间减少到十亿?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69077013/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com