O desafio é identificar o número ausente em uma sequência de números inteiros não limitados.
Você recebe uma sequência de dígitos (a entrada válida corresponderá à expressão regular ^[1-9][0-9]+$
). A sequência representa uma sequência de números inteiros. Por exemplo 1234567891011
,. Todos os números na sequência estão no intervalo de 1
e 2147483647
inclusive.
A sequência é uma série de números em que cada número é um maior que seu antecessor. No entanto, essa sequência pode conter um e apenas um número ausente da sequência. É possível que uma determinada sequência também não contenha números ausentes da sequência. A string sempre conterá pelo menos dois números da sequência.
O código deve gerar ou retornar o valor ausente, ou 0
(este é um valor 0
- não um valor falso), caso os valores ausentes não tenham sido encontrados.
A seguir, são entradas válidas e sua saída / retorno:
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
Embora tudo isso seja descrito como uma 'string' como entrada, se o idioma for capaz de manipular números arbitrariamente grandes ( dc
e mathematica
, estou olhando para vocês dois), a entrada pode ser um número arbitrariamente grande em vez de uma string, se isso permitir o código mais fácil.
Para referência, isso foi inspirado na pergunta Programmers.SE: Encontre o número ausente na sequência na sequência