2803 - Elim P: Difference between revisions

From Bitnami MediaWiki
Pagină nouă: == Cerinţa == Se citește un număr '''p''' și un șir de caractere '''s''', șirul conține cel mult '''255''' de litere mici ale alfabetului englez. Să se afișeze toate șirurile rezultate din eliminarea, pe rând, a fiecărei secvențe de '''p''' caractere din '''s''' == Date de intrare == Programul citește de la tastatură numărul '''p''' pe prima linie și șirul '''s''' pe cea de-a doua linie. == Date de ieșire == Programul va afișa pe ecran pe câte o linie, to...
 
 
(One intermediate revision by the same user not shown)
Line 8: Line 8:
* 1 ⩽ p ⩽ 255
* 1 ⩽ p ⩽ 255
* eliminările se fac de la stânga la dreapta
* eliminările se fac de la stânga la dreapta
== Exemplu 1 ==
== Exemplul 1 ==
; Intrare
; Intrare
  3
  3
Line 18: Line 18:
  ad
  ad
<br>
<br>
== Exemplu 2 ==
 
== Exemplul 2 ==
; Intrare
; Intrare
  -1
  -1
Line 25: Line 26:
  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 17:16, 25 December 2023

Cerinţa[edit]

Se citește un număr p și un șir de caractere s, șirul conține cel mult 255 de litere mici ale alfabetului englez. Să se afișeze toate șirurile rezultate din eliminarea, pe rând, a fiecărei secvențe de p caractere din s

Date de intrare[edit]

Programul citește de la tastatură numărul p pe prima linie și șirul s pe cea de-a doua linie.

Date de ieșire[edit]

Programul va afișa pe ecran pe câte o linie, toate șirurile rezultate din eliminarea, pe rând, a fiecărei secvență de p caractere din s.

Restricţii şi precizări[edit]

  • 1 ⩽ p ⩽ 255
  • eliminările se fac de la stânga la dreapta

Exemplul 1[edit]

Intrare
3
adina
Iesire
Datele de intrare corespund restrictiilor impuse
na
aa
ad


Exemplul 2[edit]

Intrare
-1
adina
Iesire
Datele de intrare nu corespund restrictiilor impuse


Rezolvare[edit]

<syntaxhighlight lang="python" line> def main():

   # Citirea numărului și a șirului de caractere de la tastatură
   p = int(input().strip())
   sir = input().strip()
   # Verifică dacă datele de intrare respectă restricțiile
   if p < 1 or p > 255 or len(sir) > 255:
       print("Datele de intrare nu corespund restrictiilor impuse")
       return
   if any(not caracter.islower() for caracter in sir):
       print("Datele de intrare nu corespund restrictiilor impuse")
       return
   print("Datele de intrare corespund restrictiilor impuse")
   # Afișarea șirurilor rezultate din eliminarea, pe rând, a fiecărei secvențe de p caractere din s
   for i in range(len(sir) - p + 1):
       print(sir[:i] + sir[i+p:])

if __name__ == "__main__":

   main()

</syntaxhighlight>