1452 Stergere Element: Difference between revisions
Pagină nouă: Sursa: [https://www.pbinfo.ro/probleme/1452/stergere-element - Stergere_Element] ---- == Cerinţa == Se dă un șir cu '''n''' elemente întregi și un număr '''p'''. Să se șteargă din șirul '''X''' elementul aflat pe poziția p. == Date de intrare == Programul va citi de la tastatură două valori '''n p''', cu semnificația precizată, apoi '''n''' numere întregi reprezentând elementele șirului. == Date de ieșire == Dacă datele sunt introduse corect, pe ecran se... |
No edit summary |
||
Line 45: | Line 45: | ||
exit() | exit() | ||
X = list(map(int, input().split())) | X = list(map(int, input().split())) | ||
if n != len(X): | |||
print("Datele nu corespund restricțiilor impuse.") | |||
exit() | |||
for c in X: | for c in X: | ||
if c >= 1000000 or c <= -1000000: | if c >= 1000000 or c <= -1000000: | ||
Line 56: | Line 59: | ||
X, n, p = citire_conform_restrictiilor() | X, n, p = citire_conform_restrictiilor() | ||
stergere_element(X, n, p) | stergere_element(X, n, p) | ||
Revision as of 15:03, 14 March 2023
Sursa: - Stergere_Element
Cerinţa
Se dă un șir cu n elemente întregi și un număr p. Să se șteargă din șirul X elementul aflat pe poziția p.
Date de intrare
Programul va citi de la tastatură două valori n p, cu semnificația precizată, apoi n numere întregi reprezentând elementele șirului.
Date de ieșire
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele sunt introduse corect.", apoi pe un rând nou va afișa pe ecran n-1 valori întregi, separate printr-un spațiu, reprezentând elementele șirului după ștergere. În cazul contrar, se va afișa pe ecran: "Datele nu corespund restricțiilor impuse.".
Restricţii şi precizări
- 1 ⩽ p ⩽ n ⩽ 1.000
- valoarea X și elementele șirului vor fi cuprinse între -1.000.000 și 1.000.000
- elementele șirului vor avea indici între 1 și n.
Exemple
Exemplul 1
- Intrare
- 5 2
- 7 3 9 1 6
- Ieșire
- Datele sunt introduse corect.
- 7 9 1 6
Exemplul 2
- Intrare
- 4 5
- Ieșire
- Datele nu corespund restricțiilor impuse.
Rezolvare
<syntaxhighlight lang="python" line>
- 1452 Stergere Element
def stergere_element(X, n, p):
for i in range(p - 1, n - 1): X[i] = X[i + 1] n -= 1 for i in range(n): print(X[i], end=" ")
def citire_conform_restrictiilor():
n, p = map(int, input().split()) if n < 1 or n > 1500 or p < 1 or p > 1500 or p > n: print("Datele nu corespund restricțiilor impuse.") exit() X = list(map(int, input().split())) if n != len(X): print("Datele nu corespund restricțiilor impuse.") exit() for c in X: if c >= 1000000 or c <= -1000000: print("Datele nu corespund restricțiilor impuse.") exit() print("Datele sunt introduse corect.") return X, n, p
if __name__ == '__main__':
X, n, p = citire_conform_restrictiilor() stergere_element(X, n, p)
</syntaxhighlight>