蓝桥杯(python)学习刷题记录

蓝桥杯学刷题记录

2022.15.8

第一题-单词分析

题目:

题目描述:小蓝正在学习一门神奇的语言,这门语言中的单词都是由小写英文字母组 成,有些单词很长,远远超过正常英文单词的长度。小蓝学了很长时间也记不住一些单词,他准备不再完全记忆这些单词,而是根据单词中哪个字母出现得最多来分辨单词。现在,请你帮助小蓝,给了一个单词后,帮助他找到出现最多的字母和这 个字母出现的次数。
输入描述:输入一行包含一个单词,单词只由小写英文字母组成。对于所有的评测用例,输入的单词长度不超过 1000。
输出描述:输出两行,第一行包含一个英文字母,表示单词中出现得最多的字母是哪 个。如果有多个字母出现的次数相等,输出字典序最小的那个。第二行包含一个整数,表示出现得最多的那个字母在单词中出现的次数

答案
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≤10 4),表示考试人数。接下来 n 行,每行包含一个 0 至 100 的整数,表示一个学生的得分。
输出描述:输出两行,每行一个百分数,分别表示及格率和优秀率。百分号前的部分 四舍五入保留整数

答案
import os
import sys
n=int(input())
jigshu=0
youxs=0
for i in range(n):
    a=int(input())
    if 0<=a<=100:
        if 60<=a:
            jigshu+=1
            if 85<=a:
                youxs+=1
print('{:.0%}'.format(jigshu/n))
print('{:.0%}'.format(youxs/n))

第三题-最短路

题目:本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。如下图所示,GG 是一个无向图,其中蓝色边的长度是 11、橘色边的长度是 22、绿色边的长度是 33。蓝桥杯(python)学习刷题记录_第1张图片

则从 AA 到 SS 的最短距离是多少?

答案
import os
import sys

# 请在此输入您的代码

# 录入路线图
r_list = [
    ["A", "E", 1],
    ["A", "B", 2],
    ["A", "C", 1],
    ["A", "D", 1],
    ["A", "E", 1],
    ["B", "G", 1],
    ["B", "J", 2],
    ["C", "D", 3],
    ["C", "G", 3],
    ["C", "F", 3],
    ["D", "G", 2],
    ["D", "H", 1],
    ["D", "I", 2],
    ["E", "H", 1],
    ["E", "I", 3],
    ["F"

你可能感兴趣的:(python,蓝桥杯,学习,算法)