課題は、区切りのない整数の文字列で欠落している数を識別することです。
数字の文字列が与えられます(有効な入力は正規表現に一致します^[1-9][0-9]+$
)。文字列は整数のシーケンスを表します。たとえば、1234567891011
。シーケンスのすべての数字は、範囲内にあるから1
と2147483647
包括的。
シーケンスは一連の数字で、各数字はその前の数字よりも1つ大きくなっています。ただし、このシーケンスには、シーケンスから欠落している番号が1つだけ含まれている場合があります。指定された文字列には、シーケンスから欠落している数値が含まれていない可能性もあります。文字列には、シーケンスから少なくとも2つの数字が常に含まれます。
コードは、欠損値を出力または返す必要があります。欠損値が見つからなかった場合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の質問に触発されました:文字列の順序に欠落している番号を探します