7-9 jmu-python-班级人员信息统计

文章描述了一个Python程序,用于统计两个班级的学生名单,包括ACM和英语竞赛参赛者,以及转学情况。程序实现了对人员名单的合并、排除、交集、差集和并集操作。
摘要由CSDN通过智能技术生成

7-9 jmu-python-班级人员信息统计
分数 15
作者 郑如滨
单位 集美大学
输入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’]
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB

a = set(input())
b = set(input().split())
acm = set(input().split())
eng = set(input().split())
tra = input()
print(f"Total: {len(a) + len(b)}")
print(f"Not in race: {sorted(((a|b)-acm-eng))}, num: {len(((a|b)-acm-eng))}")
print(f"All racers: {sorted(acm | eng)}, num: {len(acm|eng)}")
print(f"ACM + English: {sorted(acm & eng)}, num: {len(acm&eng)}")
print(f"Only ACM: {sorted(acm - eng)}")
print(f"Only English: {sorted(eng - acm)}")
print(f"ACM Or English: {sorted(acm ^ eng)}")
if tra in a:
    print(sorted(a-set(tra)))
elif tra in b:
    print(sorted(b-set(tra)))
# print(f"ACM + English: {sorted(acm & eng)}")

  • 10
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值