填空题

绿证编号合并

发布于 2022-03-03 17:33:50

远景科技集团承诺2022年实现运营碳中和,2028年实现全价值链碳中和.
绿证是实现碳中和的一个环节, 国际知名的颁发机构I-REC颁发的绿证编号是符合一定规则定义的字符串:
a.所有字符由数字和“-”构成
b.“-”隔开的数字不超过64位最大整数.

例如:
0000-0000-100000000001-01

当企业购买一批绿证时, 会得到数个证书编号, 这些证书编号可能连续, 两个编号连续同时符合以下要求:
a.两个编号长度一致
b.两个编号"-"所在位置一致
c.第一个编号加1, 恰好等于第二个编号(注意: ”-“前后的数字可以产生进位, “-”不参与计算) , 例如: A-10-99 加 1 = A-11-00

例如: 
下面几种情况都是连续的
a.0000-0000-1,0000-0000-2 (因为1+1=2)
b. 0000-0000-10-99, 0000-0000-11-00  (因为 99+1=00, 向前一段进位1, 10+1=11, 结果是0000-0000-11-00, 与第二个编号一致)

下面几种情况不是连续的
a. 0000-0000-1,0000-0000-3 (因为1+1=2, 后一个末尾却是3)
b. 0000-0000-10-99, 0000-0000-11-01 (因为99+1=00, 向前一段进位1, 10+1=11, 结果是0000-0000-11-00, 与第二个编号不一样)

为了界面显示简洁, 要求把连续的编号合并在一起, 即相同的前缀不重复显示, 不相同的部分用“ to ”隔开, 注意: to左右包含英文空格.
例如: 0000-0000-10-99, 0000-0000-11-00, 0000-0000-11-01 合并后为: 0000-0000-10-99 to 11-01

请实现合并逻辑, 输入编号数量和离散的编号, 返回合并后的编号, 并要求结果按ASCII码排序.

输入描述:
第一行N,代表共几个编号
后续每行代表一个编号
输入样例: 4 0000-0000-10-98 0000-0000-10-99 0000-0000-11-00 0000-0000-11-01 输出描述:
输出按ASCII排序好的, 合并后的编号
输出样例 0000-0000-10-98 to 11-01
关注者
0
被浏览
14
知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看