题目描述
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
小明对数位中含有2、0、1、9的数字很感兴趣,在1到40中这样的数包括
1、2、9、10至32、39和40,共28个,他们的和是574,平方和是14362。
注意,平方和是指将每个数分别平方后求和。
请问,在1到2019中,所有这样的数的平方和是多少?
我们需要找到每个数是否存在2,0,1,9任意一个数即可,重复的数字都只算一次。
import os
import sys
# 请在此输入您的代码
count = 0
for num in range(1,2020):
for i in str(num):
if i in '2019':
count += num ** 2
break # 这里如果不写break遇到重复数字如111会重复计算,导致结果不正确。
print(count)
将数字看成字符来统计
sum=0
for i in range(1,2020):
s = str(i)
if '2' in s or '0' in s or '1' in s or '9'in s: sum+=i**2
print(sum)