0996 - Div 3: Difference between revisions
No edit summary |
Vardai Erwin (talk | contribs) |
||
Line 4: | Line 4: | ||
Pe prima linie a fişierului div3.in se află numărul '''n''', iar pe a doua linie '''n numere naturale'''. | Pe prima linie a fişierului div3.in se află numărul '''n''', iar pe a doua linie '''n numere naturale'''. | ||
== Date de ieșire == | == Date de ieșire == | ||
Pe prima linie a fişierului div3.out se vor afla elementele şirului dat pentru care suma cifrelor este divizibilă cu 3, separate printr-un spațiu. | Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." Pe prima linie a fişierului div3.out se vor afla elementele şirului dat pentru care suma cifrelor este divizibilă cu 3, separate printr-un spațiu. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse." | ||
== Restricții de precizări == | == Restricții de precizări == | ||
*1 ⩽ '''n''' ⩽ 1000 | *1 ⩽ '''n''' ⩽ 1000 |
Revision as of 19:34, 24 April 2023
Cerință
Pe prima linie a fişierului div3.in se află numărul n, iar pe a doua linie n numere naturale.
Date de intrare
Pe prima linie a fişierului div3.in se află numărul n, iar pe a doua linie n numere naturale.
Date de ieșire
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." Pe prima linie a fişierului div3.out se vor afla elementele şirului dat pentru care suma cifrelor este divizibilă cu 3, separate printr-un spațiu. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."
Restricții de precizări
- 1 ⩽ n ⩽ 1000
- elementele şirului vor avea cel mult 9 cifre
Exemplul 1
- Intrare
- 7
- 124 51 231 7 24 31 5
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- 51 231 24
Exemplul 2
- Intrare
- 5
- 12 34 56 78 90
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- 12 90
Rezolvare ver. 1
<syntaxhighlight lang="python" line="1" start="1"> def validare(n, numere):
return all.isdigit() and 1 <= int(n), int(numere) <= 1000
def suma_cifre(n, numere):
suma = 0 while n > 0: suma += n % 10 # adăugăm cifra unităţilor la suma cifrelor n //= 10 # eliminăm cifra unităţilor return suma
for x in numere: # parcurgem şirul de numere if suma_cifre(x) % 3 == 0: # verificăm dacă suma cifrelor este divizibilă cu 3 print(x) # afişăm numărul dacă este divizibil cu 3
if __name__ == "__main__":
n = int(input()) # citim numărul n numere = list(map(int, input().split())) # citim şirul de numere
if validare(n, numere):
n = int(n) numere = int(numere)
print("Datele introduse corespund restricțiilor impuse.") suma_cifre(n, numere)
else:
print("Datele introduse nu corespund restricțiilor impuse.")
</syntaxhighlight>