Löschen eines Paars neben Buchstaben mit demselben Wert. Zum Beispiel würde die Zeichenfolge "aabcc" entweder "aab" oder "bcc" nach der Operation werden.Entfernen von Duplikaten, wenn sie nebeneinander gepaart werden
Probeneingang = aaabccddd
Beispielausgabe = abd
Verwirrt, wie die Liste oder die Zeichenfolge in einer Art und Weise zu durchlaufen die Duplikate zu entsprechen und sie zu entfernen, hier ist die Art und Weise ich versuche und ich weiß es ist falsch.
S = input()
removals = []
for i in range(0, len(S)):
if i + 1 >= len(S):
break
elif S[i] == S[i + 1]:
removals.append(i)
# removals is to store all the indexes that are to be deleted.
removals.append(i + 1)
i += 1
print(i)
Array = list(S)
set(removals) #removes duplicates from removals
for j in range(0, len(removals)):
Array.pop(removals[j]) # Creates IndexOutOfRange error
Dies ist ein Problem von Hackerrank: Super Reduced String
Warum 'aab'? Das ist "aa" ist ein benachbartes Paar in Ihrem Eingabe-Beispiel. –
Sie erklären das Hackerrank Problem nicht sehr gut. Dort ist die Probe "aabcc" (2 mal 'c', nicht 3), und sie sprechen von ** einer Operation ** in einer Serie. –
aab, weil es cc entfernt, das ist eine Operation, und in einer anderen Operation entfernt es aa und formt b. Auch das wurde korrigiert, Link wird nur bereitgestellt, weil ich das Problem nicht richtig erklären konnte. –