远景科技集团承诺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码排序.

区块链毕设网qklbishe.com为您提供问题的解答

远景科技集团承诺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码排序.

import java.util.Scanner;  /**  * @author:CYT  * @Date:2022/4/30 9:55  */ public class Main {     public static void main(String[] args) {         Scanner scanner=new Scanner(System.in);         String s1 = scanner.nextLine();         int count=Integer.parseInt(s1);         String[] strs=new String[count];         for (int i=0;i<count;i++){             strs[i]=scanner.nextLine();         }         ans(strs);     }      public static void ans(String[] strs){         if (strs.length==1){             System.out.println(strs[0]);         }          for (int i=0;i<strs.length;){             if (i==strs.length-1) {     // 最后一个直接输出                 System.out.println(strs[i]);                 break;             }             StringBuilder sb = new StringBuilder(strs[i]);             int j=i+1,minIndex=Integer.MAX_VALUE;             for (;j<strs.length;j++){                 Object[] objs = addOne(strs[j - 1]);            // 获得前一个加一后的序号和不同的后缀                 if (strs[j].equals(objs[0])){                     minIndex=Math.min(minIndex, (int) objs[1]);   // 选择最长的后缀                     if (j!=strs.length-1) {                         continue;                     }                     j++;                 }                 if (j!=i+1){                     sb.append(" to ").append(strs[j-1].substring(minIndex));                 }                 System.out.println(sb.append(" ").toString());                 i=j;                 break;             }         }      }      private static Object[] addOne(String str){         StringBuilder sb=new StringBuilder(str);         int count=1,i;         for (i=sb.length()-1;i>-1;i--){             char c = sb.charAt(i);             if (c=='-'){                 continue;             }else if (c=='9'){                 sb.setCharAt(i, '0');             }else {                 sb.setCharAt(i, (char) (c+count));                 i=sb.lastIndexOf("-",i)+1;                 break;             }         }         return new Object[]{sb.toString(),i};     } } 

编辑于 今天 12:49:45

以上就是关于问题远景科技集团承诺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码排序.的答案

欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。

区块链NFT链游项目方科学家脚本开发培训

从业7年-专注一级市场


微信:btc9767
TELEGRAM :https://t.me/btcok9

具体资料介绍

web3的一级市场千万收益的逻辑


进群点我



qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 远景科技集团承诺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码排序.