0200 - Eliminare Subsir 1
Cerinţa
Se dau două şiruri de caractere s şi t. Să se elimine din s toate apariţiile lui t.
Date de intrare
Programul citește de la tastatură cele două şiruri, s, respectiv t, separate prin caracterul NewLine.
Date de ieșire
Programul afișează pe ecran şirul s, obţinut după transformarea cerută.
Restricţii şi precizări
- cele două şiruri conţin cel mult 255 caractere.
Exemplul 1
- Intrare
ana si mariana canta la nai na
- Iesire
Datele de intrare corespund restrictiilor impuse ana si mariana canta la i
Exemplul 2
- Intrare
Loremipsumdolorsitamet,consecteturadipiscingelit.Nullafacilisi.Vestibulumeuismodnequeeumetusrhoncus,neciaculispurussollicitudin.Quisquecondimentum,lacusidsuscipitvestibulum,odiosemegestasnunc,velaliquetpuruseratnecelit.Nullamelementumleoacorcicongue,infringillanisleuismod.Sedaliquet,elit eupellentesqueaccumsanjusitocursuslacus,idhendreritnisl.
- Iesire
Datele de intrare nu corespund restrictiilor impuse
Rezolvare
<syntaxhighlight lang="python" line> def main():
# Citirea șirurilor de la tastatură s = input().strip() t = input().strip()
# Verifică dacă șirurile respectă restricțiile if len(s) > 255 or len(t) > 255: print("Datele de intrare nu corespund restrictiilor impuse") return
print("Datele de intrare corespund restrictiilor impuse")
# Găsirea ultimei apariții a lui t în s pozitie = s.rfind(t)
# Verificarea dacă t a fost găsit în s if pozitie != -1: # Eliminarea ultimei apariții a lui t din s s_nou = s[:pozitie] + s[pozitie + len(t):] else: s_nou = s
# Afișarea noului șir print(s_nou)
if __name__ == "__main__":
main()
</syntaxhighlight>