题解 | #数据分类处理#
数据分类处理
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的结果

