【备战】【B组】第十四届蓝桥杯python组

前言

相比报名参加蓝桥杯的大部分同学都是被忽悠来的,以为参加了就能增进自己的代码技术,从而鹤立鸡群,但实际上能坚持下来的人很少,笔者是一个大三下的老油条,自知保研无望,又不想考研重走高考路,那留给我的唯一一条路就是刷题找工作,当然蓝桥杯上面的题都是一些基础题,但对于浅显理解一门新的语言还是可以。
之前玩深度学习确实用了半年的python,但懂的都懂,实则调参大师,基础薄弱的一批,高考过后躺了三年,前两天GPT4.0发布了,强大的能力让人望而生畏,私下觉得可能不出10年,底层的程序员劳动力市场规模就会被完全摧毁,届时的开发者工作只需要人类提供创意,也就是说,当今学习计算机相关专业的同学,都将被大浪淘沙,用滤网过滤的只有完全符合位置的精华留下,其他的都是这场AI革命的牺牲品,所以自知时间不等人,只有尽自己所能,尽快进入工业界实践,而不是卷了十多个月进下一个学校给导师打工,btw人各有志,各自精彩,天若有情天亦老,人间正道是沧桑,言尽于此,开始刷题。

1、求和

n=int(input())
s=0
a=list(map(int,input().split()))
s1=sum(a)
for i in range(0,n):
  s1-=a[i]
  s+=s1*a[i]
print(s)

先读题,题目要求每个元素和除他以外的所有元素相乘,结果相加得出结果,map用于将元素串分解为单个int型的元素,list将他们汇总成表格,通过循环遍历数组下标得出结果。

2、质数

我们知道第一个质数是 2、第二个质数是 3、第三个质数是 5……

请你计算第 2019 个质数是多少?

n=2
list=[]
def yy(n):
  for i in range(2,n):
    if n%i==0:
      return False
  return True
while(len(list)!=2019):
  if yy(n)==True:
    list.append(n)
  n+=1
print(list[-1])

这道题嘛,就是考你会不会用判断,当然你也可以人脑计算,写个质数判断函数,记一下list里面的元素个数到阈值了就输出。

3、裁纸刀

小蓝有一个裁纸刀,每次可以将一张纸沿一条直线裁成两半。

小蓝用一张纸打印出两行三列共 6 个二维码,至少使用九次裁出来,下图给出了一种裁法。

在上面的例子中,小蓝的打印机没办法打印到边缘,所以边缘至少要裁 4 次。另外,小蓝每次只能裁一张纸,不能重叠或者拼起来裁。

如果小蓝要用一张纸打印出 20 行 22 列共 440 个二维码,他至少需要裁多少次?
这题不用写代码,直接看着图想,先是四个边缘,sum+=4
然后是行间20-1=19
之后是列间,因为现在每行是独立的,所以要×行数,再算每列要剪的次数=20*(22-1)=420
sum=420+19+4=443

4、相乘

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 小蓝发现,他将 1 至 1000000007 之间的不同的数与 2021 相乘后再求除以 1000000007 的余数,会得到不同的数。 小蓝想知道,能不能在 1 至 1000000007 之间找到一个数,与
2021 相乘后 再除以 1000000007 后的余数为 999999999。如果存在,请在答案中提交这个数; 如果不存在,请在答案中提交 0。

填空题无所谓超时,直接暴力运算

n=1000000007
a=2021
for i in range(n):
  t=i*a%n
  if t==999999999:
    print(i)

result=17812964

笔者饿了,去干饭啦,大家加油吧,在这个变幻莫测的时代,有门手艺能养活自己,健康快乐的活着比什么都重要。

感谢阅读,如有错误请指正。

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
乘风的头像乘风管理团队
上一篇 2023年5月11日 上午9:00
下一篇 2023年5月11日

相关推荐