题解 | #数据分类处理#
数据分类处理
http://www.nowcoder.com/practice/9a763ed59c7243bd8ab706b2da52b7fd
低智商做法,只为通过用例,看代码!
while True:
try:
I = input().split()
len_I = int(I[0])
I = I[1:] # 输入的列表I
R = input().split()
len_R = int(R[0])
R = R[1:] # 输入的列表R
R = list(set(R)) # R去重,注意此处列表元素是字符串,并没有排序,仅去重
R = sorted(map(int, R)) # 排序
R = list(map(str, R)) # 回复R元素为字符串
ans = [] # 定义结果列表
for i in R: # 遍历R中的元素
res = [] # 定义存放R元素的列表
n = 0 # 定义I中包含R元素的个数
if ' '.join(I).count(i) >= 1: # 用空格将I列表转为字符串,判断字符串中是否包含R中的元素。注意不能使用空进行拼接,如I = ['7', '7']用空拼接后为'77',那么结果将是'77'包含在I中,与预期不符
ans.append(i) # 如果R中元素包含在I中,ans列表加入该元素
for j in range(len_I): # 寻找I中包含R元素的所有元素
if i in I[j]:
res.append(j)
res.append(I[j])
n += 1 # 找到一个,n自加1
ans.append(n) # 根据输出要求,将I中出现的元素个数加入ans
ans += res # ans中加入寻找的结果
print(len(ans), end=' ')
print(*ans)
except:
break