Завдання полягає у виявленні відсутнього числа у рядку невизначених цілих чисел.
Вам надається рядок цифр (дійсне введення відповідатиме звичайному вираженню ^[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: Знайдіть відсутні рядки в послідовності в рядку