面临的挑战是在无界整数字符串中标识丢失的数字。
系统会为您提供一串数字(有效输入将匹配正则表达式^[1-9][0-9]+$
)。该字符串表示整数序列。例如,1234567891011
。序列中的所有数字都在范围1
和2147483647
包容性。
该序列是一系列数字,其中每个数字都比其前身大一个。但是,此序列可能包含一个且序列中只有一个缺失的数字。给定的字符串也可能不包含序列中的缺失数字。该字符串将始终包含序列中的至少两个数字。
该代码必须输出或返回缺失值,或者0
(0
如果没有缺失值,则该值是-而不是伪造的值)。
以下是有效的输入及其输出/返回:
input output actual sequence (for refrence)
123467 5 1 2 3 4 _ 6 7
911 10 9 __ 11
123125126 124 123 ___ 125 126
8632456863245786324598632460 8632458 8632456 8632457 _______ 8632459 8632460
123 0 1 2 3
8632456863245786324588632459 0 8632456 8632457 8632458 8632459
尽管所有这些都被描述为输入的“字符串”,但如果该语言能够处理任意大的数字(dc
并且mathematica
,我正在看你们两个),则输入可能是任意大的数字,而不是字符串,如果这样代码更容易。
作为参考,这是受Programmers.SE问题的启发:按字符串顺序查找缺失的数字