Zahlen, die in aufsteigender Reihenfolge in Folge angeordnet sind, werden als Eingabe als String angegeben. Das Programm sollte die fehlende Zahl ausgeben?Drucken von fehlenden Zahlen von gegebener Eingabe
EX:
INPUT
567568600601602
OUTPUT
569
EXPLANATION
567,568,600,601,602 are the numbers in sequence and 569 is the missing number
INPUT
1112131516
OUTPUT
14
EXPLANATION
11,12,13,15,16 are the numbers in sequence and 569 is the missing
MEIN CODE
a=input()
a=a.rstrip()
b=list(set(a))
l=[]
p=[]
c=0
for i in range(len(b)):
if a.count(b[i])>1:
c+=1
j=0
while j<=len(a):
l.append(a[j:j+c+1])
j=j+c+1
del l[-1]
k=int(l[0])
while k<=int(l[-1]):
p.append(k)
k=k+1
for u in range(len(p)):
if str(p[u]) not in l:
print(p[u])
break
Meine Frage:
Mein Programm ist nicht in der Lage, die fehlende Zahl bei 2 oder 4-stellige Zahlen als Eingabe in Form von String angegeben zu finden.
input 6768707172
output of my program 677
expected output 69
Wie überprüfen Sie, ob die Zeichenfolge 2 oder 3 oder 4-stellige Zahlen hat und sie entsprechend brechen?
Es ist 14 zurückkehrt ... Ich habe gerade überprüft –
Ich habe gerade aktualisiert überprüfen die code.Just die neue Eingaben bitte! –
Dies ist eine beliebte Interviewfrage. Sie finden die Logik in diesem Link http://www.geeksforgeeks.org/find-missing-number-string-numbers-no-separator/ –