题解 | #数据分类处理#

数据分类处理

https://www.nowcoder.com/practice/9a763ed59c7243bd8ab706b2da52b7fd

import sys
I = input().split(' ')  #I是备查数据,保持字符串格式
ni = int(I[0])
I = I[1:]
R = list(map(int,input().split(' ')))   #R是规则数据,需要按数字排序,所以先转换成数字
nr = R[0]
R = list(map(str,sorted(set(R[1:]))))   #R经过数字排序以后再转换回字符串
res = []  #总的结果列表,初始化为空
for i in R:   #对每个R中的元素i,生成一个临时的子列表resi。
    resi = [i,0]  #resi初始化添加字符i和后续被发现的次数0
    for j in range(len(I)):
        if i in I[j] :  #如果字符串i在字符串I[j]里,那么在子列表resi里添加位置j和值I[j],被发现次数+1
            resi.append(str(j))
            resi.append(str(I[j]))
            resi[1] += 1
    if len(resi) > 2: 
	  #字符串i在I中遍历之后,如果被发现则resi的长度>2,将resi拼接到res后边,否则resi==[i,0],忽略
        res += resi
print(str(len(res)) + ' ' + ' '.join([str(x) for x in res]))
#最后统计res的结果数量放到输出内容最前边,然后逐项输出res的结果

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务