You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python实现按课程分类的学生报名系统及相似姓名过滤需求

问题与代码

当前代码

x=input()
x=list(x)
amtcrs=''.join(x[0:x.index(' ')])
amtst=''.join(x[x.index(' ')+1:])
a=0
b='' 
while a<int(amtst):
    crsname=input()
    crsname=list(crsname)
    crs=''.join(crsname[0:crsname.index(' ')])
    st=''.join(crsname[crsname.index(' ')+1:])
    st=st.lower()
    a=a+1
    b=b+crs+st+' '
b=b.strip()
z=b.split(' ')
z.sort()
for l in range(0,int(amtcrs)):
    print(z)

以上是目前编写的代码,尚未完成,但已有初步进展。

任务要求

  • 首先接收输入n m,其中n为开设的课程数量,m为申请课程的学生数量
  • 随后接收m行输入,每行包含一个数字和一个姓名:数字代表学生申请的课程编号(满足1<=x<=n),姓名为学生姓名
  • 输出n行内容,分别对应各课程的报名学生姓名:课程1的报名学生为第一行,课程2为第二行,以此类推;若某课程无人报名,对应行输出空行

示例1

输入:

2 4
1 david
2 john
2 Kevin
1 jennifer

输出:

david jennifer
john Kevin

核心难点

同一课程下,若两名学生姓名相似,则先输入的学生可成功报名,后输入的无法报名。

  • 相似姓名定义:长度相同,且最多有1个字符不同,大小写视为相同
  • 相似姓名示例:mike与tike、Mike与mime均为相似姓名

示例2

输入:

3 4
1 david
1 davin
2 john
2 lola

输出:

david
john lola

注:第三行为空,因为存在第三门课程但无人报名

内容的提问来源于stack exchange,提问作者ineedhelp

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 18:20:42