小兰要为1-2020住户制作门牌号,例如制作1107号门牌,需要制作2块‘1’字符,一块‘0’字符,一块‘7’字符,求制作1-2020需要多少块‘2’.
count = 0
n=m=0
for i in range(1,2021):
while i>0:
n = i %10
if n == 2:
count +=1
i = i//10
print(count)
结果为
624
这道题可能存在的坑就是要制作第2020,有的同学可能就会忘记
将数字按照顺序填入矩阵中,需要找到第20行20列位置的数字是多少
这道题我没有使用代码计算,主要是没想到好的解题思路,通过找规律,发现了一些有趣的事情
仔细看因为我们是要找20行20列,所以,我找了前几个x列x行,发现是数字1,5,13,25,41
通过找规律发现:5是(2,2)13是(3,3)25是(4,4)
5=1+2+(2x2)/2
13=1+2+3+4+(3x2)/2
25=1+2+3+4+5+6+(4x2)/2
可推出n行n列为:
m=1+2+3+…+(n-1)x2+n
所以结果为
761
小明从2000年1月1日开始跑步,到2020年10月1日,每天跑1公里,遇到月初或者周一多跑一公里,不重复叠加
day = week =yue = 0
for i in range(2000,2021):
if i % 4==0 and i % 100 !=0 or i %400 ==0:
day +=366
else :
day +=365
day = day - 91
week =(day-2) // 7
yue = 12 *20 +10
day = day +week +yue -33
print(day)
上面减的33为周一和月1号重合,减去多余的重合
结果为
8879