挑战两周速成蓝桥杯荣获陪跑教程(第一天)

admin
39
2025-03-24

没时间了,直接开刷

单词分析

题目描述

小蓝正在学习一门神奇的语言,这门语言中的单词都是由小写英文字母组 成,有些单词很长,远远超过正常英文单词的长度。小蓝学了很长时间也记不住一些单词,他准备不再完全记忆这些单词,而是根据单词中哪个字母出现得最多来分辨单词。

现在,请你帮助小蓝,给了一个单词后,帮助他找到出现最多的字母和这 个字母出现的次数。

输入描述

输入一行包含一个单词,单词只由小写英文字母组成。

对于所有的评测用例,输入的单词长度不超过 1000。

输出描述

输出两行,第一行包含一个英文字母,表示单词中出现得最多的字母是哪 个。如果有多个字母出现的次数相等,输出字典序最小的那个。

第二行包含一个整数,表示出现得最多的那个字母在单词中出现的次数。

输入输出样例

示例 1

输入

lanqiao

输出

a
2

示例 2

输入

longlonglongistoolong

输出

o
6

import os
import sys
# 请在此输入您的代码
word=input()
a=0
b=[]
for i in word:
    c=word.count(i)
    if c>=a:
        a=c
for j in word:
    if word.count(j)==a:
        b.append(j)
b.sort()
print(b[0])
print(a)
# 请在此输入您的代码

成绩统计

题目描述

小蓝给学生们组织了一场考试,卷面总分为 100 分,每个学生的得分都是一个 0 到 100 的整数。

如果得分至少是 60 分,则称为及格。如果得分至少为 85 分,则称为优秀。

请计算及格率和优秀率,用百分数表示,百分号前的部分四舍五入保留整 数。

输入描述

输入的第一行包含一个整数 n (1≤n≤104)n (1≤n≤104),表示考试人数。

接下来 nn 行,每行包含一个 0 至 100 的整数,表示一个学生的得分。

输出描述

输出两行,每行一个百分数,分别表示及格率和优秀率。百分号前的部分 四舍五入保留整数。

输入输出样例

示例

输入

7
80
92
56
74
88
100
0

输出

71%
43%

import os
import sys

# 请在此输入您的代码

n=int(input())
lst=[int(input()) for i in range(n)]
hege=[]
youxiu=[]
for i in lst:
  if i >= 85:
    youxiu.append(i)
    hege.append(i)
  elif i >=60:
    hege.append(i)
print(str(round(len(hege)/n*100))+'%')
print(str(round(len(youxiu)/n*100))+'%')

门牌制作

题目描述

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

小蓝要为一条街的住户制作门牌号。

这条街一共有 20202020 位住户,门牌号从 1120202020 编号。

小蓝制作门牌的方法是先制作 0099 这几个数字字符,最后根据需要将字符粘贴到门牌上,例如门牌 1017 需要依次粘贴字符 1、0、1、71、0、1、7,即需要 11 个字符 0022 个字符 1111 个字符 77

请问要制作所有的 1120202020 号门牌,总共需要多少个字符 22

import os
import sys
a=0
for i in range(1,2021):
    b = str(i).count("2")
    a+=b
print(a)
# 请在此输入您的代码

卡片

题目描述

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

小蓝有很多数字卡片,每张卡片上都是数字 0099

小蓝准备用这些卡片来拼一些数,他想从 11 开始拼出正整数,每拼一个,就保存起来,卡片就不能用来拼其它数了。

小蓝想知道自己能从 11 拼到多少。

例如,当小蓝有 3030 张卡片,其中 009933 张,则小蓝可以拼出 111010

但是拼 1111 时卡片 11 已经只有一张了,不够拼出 1111

现在小蓝手里有 0099 的卡片各 20212021 张,共 2021020210 张,请问小蓝可以从 11 拼到多少?

提示:建议使用计算机编程解决问题。

import os
import sys
'''
比如说 1 2 3 4 5 6 7 8 9,一位数的时候1首先被消耗,其他数字都是在1后面被消耗,
0还未被消耗 10 11 12 13 14 15 16 17 18 19 ....99,两位数十几,都一直首先消耗1 
后面三位数,四位数也是..... 所以说,我们只需监测1被消耗的次数,当下一次拼数字需要1,
而1的消耗次数大于2021时, 就拼不出来了,由于此次在循环里面进入了循环,但是循环变量的值拼不出来,所以将变量值-1
'''

import os
import sys

count_1 = 0  # 初始化1出现的次数
for i in range(1, 20210):
    count_1 += str(i).count("1")
    if count_1 > 2021:
        print(i-1)  # 由于此次在循环里面进入了循环,但是循环变量的值拼不出来,所以将变量值-1
        break
# 请在此输入您的代码

跑步锻炼

题目描述

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

小蓝每天都锻炼身体。

正常情况下,小蓝每天跑 11 千米。如果某天是周一或者月初(11 日),为了激励自己,小蓝要跑 22 千米。如果同时是周一或月初,小蓝也是跑 22 千米。

小蓝跑步已经坚持了很长时间,从 200020001111 日周六(含)到 20202020101011 日周四(含)。请问这段时间小蓝总共跑步多少千米?

import os
import sys
import datetime

start = datetime.date(2000, 1, 1)
end = datetime.date(2020, 10, 1)
days = datetime.timedelta(days=1)
ans = 0

while end >= start:
    if start.day == 1 or start.weekday() == 0:
        ans += 2
    else:
        ans += 1
    start += days
print(ans)
# 请在此输入您的代码

蛇形填数

题目描述

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

如下图所示,小明用从 11 开始的正整数“蛇形”填充无限大的矩阵。

1 2 6 7 15 ...
3 5 8 14 ...
4 9 13 ...
10 12 ...
11 ...
...

容易看出矩阵第二行第二列中的数是 55。请你计算矩阵中第 2020 行第 2020 列的数是多少?

import os
import sys

'''
对角线上的元素为1,5,13,21
为前一个元素+行号的4倍
'''
res=1
for i in range(1,20):
  res += 4*i
  #print(res)
#print('===================')
print(res)
# 如果是我真碰到我直接拿excel表格列出来

排列字母

问题描述

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

小蓝要把一个字符串中的字母按其在字母表中的顺序排列。

例如,LANQIAO 排列后为 AAILNOQ。

又如,GOODGOODSTUDYDAYDAYUP 排列后为 AADDDDDGGOOOOPSTUUYYY。

请问对于以下字符串,排列之后字符串是什么?

WHERETHEREISAWILLTHEREISAWAY

import os
import sys
a = list("WHERETHEREISAWILLTHEREISAWAY")
a.sort()
for i in a:
    print(i,end="")
# 请在此输入您的代码

总结:微学到点东西

动物装饰