前言:
整体还是偏简单的,但有两题分别涉及到bfs和完全二叉树是我未曾学习过的领域,复习时再来补坑,近期准备复习期末考了
目录
填空题
平方和
题目:
小明对数位中含有 2、0、1、9 的数字很感兴趣,在 1 到40 中这样的数包括 1、2、9、10 至 32、39 和 40,共28 个,他们的和是574,平方和是 14362。
注意,平方和是指将每个数分别平方后求和。
请问,在 1 到2019 中,所有这样的数的平方和是多少?
思路:
暴力枚举就好了
代码:
def panduan(num):
num=str(num)
for i in num:
if i=='2' or i=='0' or i=='1' or i=='9':
return True
return False
res=0
for i in range(1,2020):
if panduan(i):
res += i**2
print(res)
答案:2658417853
数列求值
题目:
给定数列 1, 1, 1, 3, 5, 9, 17, …,从第 4 项开始,每项都是前 3 项的和。
求第 20190324 项的最后 4 位数字。
思路:
没啥特别的思路,但为了加快运行速度,我们只要计算最后四位数字就好(取余
代码:
## 取余跑快点
t1,t2,t3=1,1,1
for i in range(20190321):
res=(t1+t2+t3)%10000
t1=t2
t2=t3
t3=res
#print(i)
print(res)
答案:4659
最大降雨量
题目:
由于沙之国长年干旱,法师小明准备施展自己的一个神秘法术来求雨。
这个法术需要用到他手中的49张法术符,上面分别写着1至49这49个数字。法术一共持续7周,每天小明都要使用一张法术符,法术符不能重复使用。
每周,小明施展法术产生的能量为这周7张法术符上数字的中位数。法术施展完7周后,求雨将获得成功,降雨量为7周能量的中位数。
由于干旱太久,小明希望这次求雨的降雨量尽可能大,请大最大值是多少?
思路:
也就是49个值,我们最后只需要中位数的中位数的值最大
画图:
圆圈的地方就是最后的取值,我们想要这个值最大,那就当只有√的地方比这个地方大时即可(√的地方必须比⚪的地方大,因为中位数
结果=
答案:49-15=34
年号字串
题目:
小明用字母 A 对应数字 1,B 对应 2,以此类推,用