2582 - Secv Elim: Difference between revisions
Andrada378 (talk | contribs) No edit summary |
Andrada378 (talk | contribs) |
||
Line 28: | Line 28: | ||
<syntaxhighlight lang="python"> | <syntaxhighlight lang="python"> | ||
def elimina_duplicate_consecutive(s): | def elimina_duplicate_consecutive(s): | ||
if len(s) > 255: | |||
print("Eroare: Lungimea șirului depășește 255 de caractere.") | |||
return None | |||
i = 0 | i = 0 | ||
Line 41: | Line 45: | ||
return s | return s | ||
input_str = input() | if __name__ == "__main__": | ||
input_str = input("Introduceți șirul: ") | |||
result = elimina_duplicate_consecutive(input_str) | |||
if result is not None: | |||
print(result) | |||
</syntaxhighlight> | </syntaxhighlight> |
Latest revision as of 16:53, 4 January 2024
Cerința[edit | edit source]
Se dă un șir de caractere care conține doar litere mici și mari ale alfabetului englez. Se parcurge șirul de la stânga la dreapta și dacă se întâlnește o secvență de litere alăturate egale, se șterge. Dacă în urma acestei operații se obține o nouă secvență de litere egale, se șterge și ea, ș. a. m. d.
Să se afișeze șirul obținut.
Date de intrare[edit | edit source]
Programul citește de la tastatură un șir de caractere.
Date de iesire[edit | edit source]
Programul va afișa pe ecran șirul obținut.
Restricții și precizări[edit | edit source]
- șirul dat conține maximum 255 de caractere
- nu se face diferență între literele mari și mici.
Exemplu[edit | edit source]
Intrare
aAcboOoBcAXa
Ieșire
AXa
Rezolvare[edit | edit source]
<syntaxhighlight lang="python"> def elimina_duplicate_consecutive(s):
if len(s) > 255: print("Eroare: Lungimea șirului depășește 255 de caractere.") return None
i = 0
while i < len(s) - 1: if s[i].lower() == s[i + 1].lower(): c = s[i].lower() j = i + 1 while j < len(s) and s[j].lower() == c: j += 1 s = s[:i] + s[j:] i = -1 i += 1
return s
if __name__ == "__main__":
input_str = input("Introduceți șirul: ") result = elimina_duplicate_consecutive(input_str) if result is not None: print(result)
</syntaxhighlight>