1191 - Arhitectura: Difference between revisions
Adina Timiș (talk | contribs) No edit summary |
Adina Timiș (talk | contribs) No edit summary |
||
Line 24: | Line 24: | ||
<syntaxhighlight lang="python" line="1"> | <syntaxhighlight lang="python" line="1"> | ||
#1191 - Arhitectura | #1191 - Arhitectura | ||
def | def arhitectura(): | ||
# citim numărul de înălțimi | # citim numărul de înălțimi | ||
n = int(input()) | n = int(input()) | ||
# citim lista de înălțimi | # citim lista de înălțimi | ||
inaltimi = list(map(int, input().split())) | inaltimi = list(map(int, input().split())) | ||
# verificăm restricțiile | # verificăm restricțiile | ||
if n < 1 or n > 1000 or any(h < 1 or h >= 1000000000 for h in inaltimi): | if n < 1 or n > 1000 or any(h < 1 or h >= 1000000000 for h in inaltimi): | ||
print("Datele de intrare nu corespund restricțiilor impuse.") | print("Datele de intrare nu corespund restricțiilor impuse.") | ||
else: | else: | ||
print("Datele de intrare corespund restricțiilor impuse.") | print("Datele de intrare corespund restricțiilor impuse.") | ||
# sortăm lista de înălțimi, în ordine descrescătoare | # sortăm lista de înălțimi, în ordine descrescătoare | ||
Line 46: | Line 45: | ||
if __name__ == '__main__': | if __name__ == '__main__': | ||
# apelăm funcția arhitectura() | |||
arhitectura() | |||
</syntaxhighlight> | </syntaxhighlight> |
Latest revision as of 10:19, 21 May 2023
Cerința[edit | edit source]
Primăria dorește să realizeze un proiect de sistematizare a orașului și pentru aceasta îl angajează pe arhitectul Gigel. Orașul constă în n clădiri; pentru fiecare se cunoaște înălțimea, iar Gigel trebuie să ordoneze descrescător aceste înălțimi.
Date de intrare[edit | edit source]
Programul citește de la tastatură prima linie numărul n, apoi n numere naturale separate prin spații, reprezentând înălțimile celor n clădiri.
Date de ieșire[edit | edit source]
Programul va afișa pe ecran n numere naturale, separate prin câte un spațiu, reprezentând înălțimile clădirilor, după ordonare.
Restricții și precizări[edit | edit source]
- 1 ≤ n ≤ 1000
- înălțimile clădirilor vor fi mai mici decât 1.000.000.000
Exemplul 1[edit | edit source]
- Intrare
- 5
- 1 2 7 3 6
- Ieșire
- Datele de intrare corespund restricțiilor impuse.
- 7 6 3 2 1
Exemplul 2[edit | edit source]
- Intrare
- 0
- Ieșire
- Datele de intrare nu corespund restricțiilor impuse.
Rezolvare[edit | edit source]
<syntaxhighlight lang="python" line="1">
- 1191 - Arhitectura
def arhitectura():
# citim numărul de înălțimi n = int(input()) # citim lista de înălțimi inaltimi = list(map(int, input().split()))
# verificăm restricțiile if n < 1 or n > 1000 or any(h < 1 or h >= 1000000000 for h in inaltimi): print("Datele de intrare nu corespund restricțiilor impuse.") else: print("Datele de intrare corespund restricțiilor impuse.") # sortăm lista de înălțimi, în ordine descrescătoare inaltimi_ord = ordonare_descrescatoare(inaltimi) # afișăm lista sortată de înălțimi print(*inaltimi_ord)
def ordonare_descrescatoare(lista):
# sortează lista în ordine descrescătoare return sorted(lista, reverse=True)
if __name__ == '__main__':
# apelăm funcția arhitectura() arhitectura()
</syntaxhighlight>