0200 - Eliminare Subsir 1: Difference between revisions

From Bitnami MediaWiki
Pagină nouă: == 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. == Exemp...
 
 
(One intermediate revision by the same user not shown)
Line 7: Line 7:
== Restricţii şi precizări ==
== Restricţii şi precizări ==
* cele două şiruri conţin cel mult '''255''' caractere.
* cele două şiruri conţin cel mult '''255''' caractere.
== Exemplu 1 ==
== Exemplul 1 ==
; Intrare
; Intrare
  ana si mariana canta la nai
  ana si mariana canta la nai
Line 15: Line 15:
  ana si mariana canta la i
  ana si mariana canta la i
<br>
<br>
== Exemplu 2 ==
 
== Exemplul 2 ==
; Intrare
; Intrare
  Loremipsumdolorsitamet,consecteturadipiscingelit.Nullafacilisi.Vestibulumeuismodnequeeumetusrhoncus,neciaculispurussollicitudin.Quisquecondimentum,lacusidsuscipitvestibulum,odiosemegestasnunc,velaliquetpuruseratnecelit.Nullamelementumleoacorcicongue,infringillanisleuismod.Sedaliquet,elit eupellentesqueaccumsanjusitocursuslacus,idhendreritnisl.
  Loremipsumdolorsitamet,consecteturadipiscingelit.Nullafacilisi.Vestibulumeuismodnequeeumetusrhoncus,neciaculispurussollicitudin.Quisquecondimentum,lacusidsuscipitvestibulum,odiosemegestasnunc,velaliquetpuruseratnecelit.Nullamelementumleoacorcicongue,infringillanisleuismod.Sedaliquet,elit eupellentesqueaccumsanjusitocursuslacus,idhendreritnisl.
Line 22: Line 23:
  Datele de intrare nu corespund restrictiilor impuse
  Datele de intrare nu corespund restrictiilor impuse
<br>
<br>
== Rezolvare ==
== Rezolvare ==
<syntaxhighlight lang="python" line>
<syntaxhighlight lang="python" line>

Latest revision as of 18:13, 25 December 2023

Cerinţa[edit]

Se dau două şiruri de caractere s şi t. Să se elimine din s toate apariţiile lui t.

Date de intrare[edit]

Programul citește de la tastatură cele două şiruri, s, respectiv t, separate prin caracterul NewLine.

Date de ieșire[edit]

Programul afișează pe ecran şirul s, obţinut după transformarea cerută.

Restricţii şi precizări[edit]

  • cele două şiruri conţin cel mult 255 caractere.

Exemplul 1[edit]

Intrare
ana si mariana canta la nai
na
Iesire
Datele de intrare corespund restrictiilor impuse
ana si mariana canta la i


Exemplul 2[edit]

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[edit]

<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>