题解 | #数据分类处理#
数据分类处理
http://www.nowcoder.com/practice/9a763ed59c7243bd8ab706b2da52b7fd
def judge(i,r): #判断r是否完全包含了连续的i
if str(i) in str(r):
return True
else: return False
linei = list( map(int, input().split() ) )
liner = list( map(int, input().split() ) )
m, n = linei[0], liner[0]
nums = sorted(set(liner[1:])) #去重并排序
ans = '' #记录当前满足条件的数字
cnt=0 #记录ans的长度
for i in nums: #判断r是否完全包含了连续的i
if str(i) in str(linei[1:]): #判断i是否存在于r
tcnt=0 #记录i满足条件时的个数
ans+=str(i) #记录当前i
ans+=' ' #分隔字符
cur='' #记录当前满足条件字符
for r in range(m): #遍历r
if judge(i, linei[r+1]): #i存在于r
cur+=str(r) #记录当前r值的位置
cur+=' ' #分隔
cur+=str(linei[r+1]) #记录当前r值
cur+=' ' #分隔
tcnt+=1 #记录当前满足条件的r的个数
ans+=str(tcnt) #记录满足i的所有r个数
ans+=' '
ans+=cur #记录满足i的所有r的位置和值
cnt+=2 #ans又新增两个数
cnt+=2*int(tcnt) #ans新增的满足条件的所有r的位置和值的个数
res=''
res+=str(cnt) #记录ans的长度
res+=' '
res+=ans
print(res)