一.所花时间
0.6h
二.代码量
30行
三.博客量
1篇
四.了解到的知识点
如a是一个列表,且a[:]与a[::-1]相等,则a中元素按顺序排列构成一个回文。
表达式 {1, 3, 2} > {1, 2, 3} 的值为True。
已知x为非空列表,那么执行语句x[0] = 3之后,列表对象x的内存地址不变。
Python内置的集合set中元素顺序是按元素的哈希值进行存储的,并不是按先后顺序。
已知x是一个列表,那么x = x[3:] + x[:3]可以实现把列表x中的所有元素循环左移3位。
有向图的字典表示。输入多行字符串,每行表示一个顶点和该顶点相连的边及长度,输出顶点数,边数,边的总长度。比如上图0点表示:
{'O':{'A':2,'B':5,'C':4}}。用eval函数处理输入,eval函数具体用法见第六章内置函数。
输入格式:
第一行表示输入的行数
下面每行输入表示一个顶点和该顶点相连的边及长度的字符串
输出格式:
在一行中输出顶点数,边数,边的总长度
输入样例:
在这里给出一组输入。例如:
4
{'a':{'b':10,'c':6}}
{'b':{'c':2,'d':7}}
{'c':{'d':10}}
{'d':{}}
输出样例:
在这里给出相应的输出。例如:
4 5 35
n=int(input())
num=0
sum=0
for i in range(n):
dic=eval(input())
for j in dic:
temp=dic[j]
for key in temp:
num+=1
sum+=temp[key]
print("{:d} {:d} {:d}".format(n,num,sum))
输入一行字符串,然后对其进行如下处理。
输入格式:
字符串中的元素以空格或者多个空格分隔。
输出格式:
逆序输出字符串中的所有元素。
然后输出原列表。
然后逆序输出原列表每个元素,中间以1个空格分隔。注意:最后一个元素后面不能有空格。
输入样例:
a b c e f gh
输出样例:
ghfecba
['a', 'b', 'c', 'e', 'f', 'gh']
gh f e c b a
s=list(input().split())
t=s[::-1]
print(''.join(t))
print(s)
print(*t)
输入a,b班的名单,并进行如下统计。
输入格式:
第1行::a班名单,一串字符串,每个字符代表一个学生,无空格,可能有重复字符。
第2行::b班名单,一串字符串,每个学生名称以1个或多个空格分隔,可能有重复学生。
第3行::参加acm竞赛的学生,一串字符串,每个学生名称以1个或多个空格分隔。
第4行:参加英语竞赛的学生,一串字符串,每个学生名称以1个或多个空格分隔。
第5行:转学的人(只有1个人)。
输出格式
特别注意:输出人员名单的时候需调用sorted函数,如集合为x,则print(sorted(x))
输出两个班级的所有人员数量
输出两个班级中既没有参加ACM,也没有参加English的名单和数量
输出所有参加竞赛的人员的名单和数量
输出既参加了ACM,又参加了英语竞赛的所有人员及数量
输出参加了ACM,未参加英语竞赛的所有人员名单
输出参加英语竞赛,未参加ACM的所有人员名单
输出参加只参加ACM或只参加英语竞赛的人员名单
最后一行:一个同学要转学,首先需要判断该学生在哪个班级,然后更新该班级名单,并输出。如果没有在任何一班级,什么也不做。
输入样例:
abcdefghijab
1 2 3 4 5 6 7 8 9 10
1 2 3 a b c
1 5 10 a d e f
a
输出样例:
Total: 20
Not in race: ['4', '6', '7', '8', '9', 'g', 'h', 'i', 'j'], num: 9
All racers: ['1', '10', '2', '3', '5', 'a', 'b', 'c', 'd', 'e', 'f'], num: 11
ACM + English: ['1', 'a'], num: 2
Only ACM: ['2', '3', 'b', 'c']
Only English: ['10', '5', 'd', 'e', 'f']
ACM Or English: ['10', '2', '3', '5', 'b', 'c', 'd', 'e', 'f']
['b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']
class_list1 = set(input()) # 记录一班学生信息
class_list2 = set(input().split()) # 记录二班学生信息
acm_list = set(input().split()) # 参加acm竞赛的学生
english_list = set(input().split()) # 参加英语竞赛的学生
student = input()
class_lst = class_list1 | class_list2 # 两个班的总人数
total_student = len(class_lst)
norace_list = class_lst - acm_list - english_list # 没有参加竞赛的学生
race_list = acm_list | english_list # 所有参赛
race_all_list = acm_list & english_list # 两个都参加
race_acm_list = acm_list - english_list # 只参加acm
race_englist_list = english_list - acm_list # 只参加英语
race_one_list = race_list - race_all_list # 只参加一个
print(f'Total: {total_student}')
print(f'Not in race: {sorted(norace_list)}, num: {len(norace_list)}')
print(f'All racers: {sorted(race_list)}, num: {len(race_list)}')
print(f'ACM + English: {sorted(race_all_list)}, num: {len(race_all_list)}')
print(f'Only ACM: {sorted(race_acm_list)}')
print(f'Only English: {sorted(race_englist_list)}')
print(f'ACM Or English: {sorted(race_one_list)}')
if student in class_list1:
class_list1.remove(student)
print(sorted(class_list1))
elif student in class_list2:
class_list2.remove(student)
print(sorted(class_list2))
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端