题解 | #数据分类处理#

数据分类处理

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

没有什么技巧,就是循环遍历,先对R序列做掐头(第一位不算),去重,排序的处理。然后用每一个剩余的R成员和 I 序列中的元素逐一判断包含关系,如果包含,则把出现的次数tes 加1 ,将I中满足条件的元素的索引和元素一起追加到列表中,每一个R元素比较完后,判断 R元素出现的次数是否为0,为0则不记录,不为零则将R[i]  ,次数 ,I序列索引和元素,汇总成一条字符串,然后存入到放最终结果列表。
最后打印列表长度和列表的所有元素。
 while True:
    try:
        I = raw_input().split()[1:]
        R = sorted(set(map(int,raw_input().split()[1:])))
        tmp = [[]] * len(R)
        rl = []
        for r in range(len(R)):
            tmp[r] = []
            tes = 0
            for j in range(len(I)):
                if I[j].count(str(R[r])) != 0:
                    tes +=1 
                    tmp[r].append(str(j)+' '+str(I[j]))
            if tes !=0:      
                res = str(R[r])+ ' ' + str(tes) +' ' + ' '.join( tmp[r])
                rl.append(res)
        rs = ' '.join(rl)
        num = len(rs.split())
        print num,rs 
    except:
        break


全部评论

相关推荐

10-14 21:00
门头沟学院 Java
吃花椒的狸猫:这个人说的倒是实话,特别是小公司,一个实习生哪里来的那么多要求
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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