问题1:快递分拣
题目描述
蓝桥王国的每个快递都包含两个参数:1.快递单号 2.快递城市。
小李是蓝桥王国的一名快递员,每天的快递分拣让他苦不堪言。
于是他想要你帮他设计一个程序用于快递的分拣(将不同快递按城市信息分开)。
输入描述
输入第一行包含一个整数 NN,表示快递的个数。
接下来第 2 行∼N+1 行每行包含一个字符串 SS 和一个字符串 PP,分别快递单号以及快递对应的城市。
1≤N≤10^3,保证数据量不超过 10^6。
输出描述
输出共若干行。按城市的输入顺序依次输出城市的名称以及城市的快递个数,以及该城市的所有快递单号(单号按照输入顺序排序)。
输入输出样例
示例
输入
10
10124214 北京
12421565
上海
sdafasdg213 天津
fasdfga124 北京
145252
上海
235wtdfsg 济南
3242356fgdfsg 成都
23423 武汉
23423565f 沈阳
1245dfwfs 成都
输出
北京 2
10124214
fasdfga124
上海 2
12421565
145252
天津 1
sdafasdg213
济南 1
235wtdfsg
成都 2
3242356fgdfsg
1245dfwfs
武汉 1
23423
沈阳 1
23423565f
python源码:
city=[]
dig = [[] for i in range(1000)]
def find(s):
for i in range(0,len(city)):
if (city[i]==s):
return i
return -1
if __name__ == '__main__':
n=int (input())
for i in range(0,n):
d=input().split()
#print(d[1]
)
flag=find(d[1])
if(flag==-1):
city.append(d[1])
dig[len(city)-1].append(d[0])
else:
dig[flag].append(d[0])
for i in range(0,len(city)):
print(city[i],len(dig[i]))
for j in range(0,len(dig[i])):
print(dig[i][j])
注: 文章内容摘自该链接文档,多此一举,实为共同学习、知识共享:蓝桥杯省赛 14 天夺奖冲刺营 - 练一练「弗里石的的语言」 - 蓝桥云课 (lanqiao.cn)
最后
以上就是英勇高山最近收集整理的关于数据处理——内置模板(绕过固定算法)问题1:快递分拣的全部内容,更多相关数据处理——内置模板(绕过固定算法)问题1内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复