Buradaki zorluk, eksik sayıyı bir dizi bitmemiş tam sayı dizesinde belirlemektir.
Size bir basamak dizesi verilir (geçerli giriş normal ifadeyle eşleşir ^[1-9][0-9]+$
). Dize, bir tamsayı dizisini temsil eder. Örneğin 1234567891011
,. Sekanstaki tüm sayılar arasında 1
ve 2147483647
kapsayıcıdır.
Dizi, her sayının öncekinden bir büyük olduğu bir sayı dizisidir. Ancak bu sekans , sekanstan bir ve sadece bir eksik sayı içerebilir. Belirli bir dizenin diziden eksik numara içermemesi de mümkündür. Dize her zaman diziden en az iki sayı içerir.
Eksik değer bulunamaması durumunda kodun eksik değeri vermesi veya döndürmesi gerekir 0
( veya bu bir 0
- yanlış değer değildir).
Aşağıdakiler geçerli girdiler ve bunların çıktıları / dönüşleri:
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
Tüm bunlar giriş olarak 'dize' olarak tanımlansa da, dil keyfi olarak büyük sayıları işleyebiliyorsa ( dc
ve mathematica
ikinize bakıyorum), giriş yaparsa bir dize yerine rastgele büyük bir sayı olabilir kolay kod.
Başvuru için bu, Programcılar'dan ilham almıştır.SE sorusu: Dizede eksik sayıyı sırayla bulun