每个相册内无重复照片,不同相册间可能出现同一照片(以照片 id 相同为重复)。
读取 N 个相册中每张照片的 (id, 时间戳):
id 出现于多少个相册(因为同一相册内不重复,直接累加即可)。id 的时间戳(题目数据保证输出唯一;实现上可记录第一次出现的时间戳)。最后筛出 count > 1 的 id,按 (时间戳升序, id升序) 排序(用 id 作兜底保证稳定),输出 id 重复次数 的序列。
手机里保存了若干相册,每个相册中的照片不会出现重复,但不同相册之间可能收录同一张照片。每张照片用一个图片 id 标识,并带有一个时间戳。在任意一个相册内部,照片都按照时间戳从小到大的顺序排列。
现在给出 N 个相册的照片序列。请找出所有至少在两个相册中出现过的图片 id,并统计每个这样的 id 在所有相册中一共出现了多少次。输出时,需要按照这些图片对应时间戳从小到大排列。不同图片可能具有相同的时间戳,但输入数据保证最终的输出序列是唯一的。
约束条件: 相册数量 N 大于 0 且小于 10。 每个相册中的图片数量 K 大于 0 且小于 100。
第一行包含一个整数 N,表示相册的个数。
接下来 N 行,每行包含 2K 个由空格分隔的整数,表示 K 个图片的 图片 id 和时间戳。
输出一行,包含若干由空格分隔的整数。对于每个重复出现的图片 id,先输出该 id,再输出它对应的重复出现次数,所有这样的 id 按照各自时间戳升序排列。
输入
2
1 10 2 20 3 30
1 10 2 20 4 25
输出
1 2 2 2
说明
共有 2 个相册。
相册 1 的图片 id 依次为 1、2、3,对应时间戳依次为 10、20、30。相册 2 的图片 id 依次为 1、2、4,对应时间戳依次为 10、20、25。
图片 1 在 2 个相册中各出现一次,因此重复出现次数为 2,时间戳为 10。图片 2 同样在 2 个相册中各出现一次,重复出现次数为 2,时间戳为 20。图片 3 和图片 4 只在一个相册中出现,不计入结果。
按时间戳从小到大排列,先输出图片 1 和次数 2,再输出图片 2 和次数 2,得到 1 2 2 2。
输入
3
10 5 11 5 12 6
10 5 11 5 13 7
10 5 14 8
输出
10 3 11 2
说明
共有 3 个相册。
相册 1 的图片 id 为 10、11、12,对应时间戳为 5、5、6。相册 2 的图片 id 为 10、11、13,对应时间戳为 5、5、7。相册 3 的图片 id 为 10、14,对应时间戳为 5、8。
图片 10 在 3 个相册中各出现一次,重复出现次数为 3,时间戳为 5。图片 11 在 2 个相册中各出现一次,重复出现次数为 2,时间戳也为 5。其余图片只出现一次,不计入结果。
时间戳相同时,根据题目保证的唯一输出顺序,图片 10 排在图片 11 之前。最终输出为 10 3 11 2。
输入
2
7 3
7 3
输出
7 2
说明
这是最小规模的有效重复情况。
共有 2 个相册,每个相册只有 1 张照片。图片 7 在 2 个相册中都出现,因此重复出现次数为 2,时间戳为 3。
输出图片 7 和次数 2,即 7 2。
© CodeFun2000 · 使用条款
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册