3746 - LeMans: Difference between revisions

From Bitnami MediaWiki
Pagină nouă: == Cerința == În cadrul unei curse de mașini LeMans, fiecare mașină trebuie să finalizeze un anumit număr de ture pentru a completa cursa. Organizatorii doresc să afle ordinea în care mașinile au terminat cursa, în funcție de numărul de ture completate. Sarcina ta este să implementezi un program care sortează mașinile în funcție de numărul de ture completate în ordine descrescătoare. == Date de intrare == Programul citește de la tastatură: Un număr î...
 
Ștergerea conținutului paginii
Tag: Blanking
 
Line 1: Line 1:
== Cerința ==
În cadrul unei curse de mașini LeMans, fiecare mașină trebuie să finalizeze un anumit număr de ture pentru a completa cursa. Organizatorii doresc să afle ordinea în care mașinile au terminat cursa, în funcție de numărul de ture completate. Sarcina ta este să implementezi un program care sortează mașinile în funcție de numărul de ture completate în ordine descrescătoare.
== Date de intrare ==
Programul citește de la tastatură:


Un număr întreg n reprezentând numărul de mașini.
O listă de n numere întregi reprezentând numărul de ture completate de fiecare mașină.
== Date de ieșire ==
Pe ecran se va afișa lista de numere de ture completate de fiecare mașină, sortată în ordine descrescătoare.
== Restricții și precizări ==
*1 ⩽ '''n''' ⩽ 1000
* Numărul de ture pentru fiecare mașină este un număr întreg pozitiv
== Exemplu 1 ==
;Intrare
5<br>
100 150 120 130 110
;Iesire
150 130 120 110 100
== Rezolvare ==
<syntaxhighlight lang="python" line>
def citeste_date():
    try:
        n = int(input("Introduceți numărul de mașini (n): "))
        ture = list(map(int, input("Introduceți numărul de ture completate de fiecare mașină, separate prin spațiu: ").split()))
        return n, ture
    except ValueError:
        return None, None
def valideaza_date(n, ture):
    if not (1 <= n <= 1000):
        return False
    if len(ture) != n:
        return False
    if not all(isinstance(tura, int) and tura > 0 for tura in ture):
        return False
    return True
def sorteaza_ture_descrescator(n, ture):
    ture.sort(reverse=True)
    return ture
def main():
    n, ture = citeste_date()
   
    if n is None or ture is None or not valideaza_date(n, ture):
        print("Datele de intrare nu corespund restricțiilor impuse.")
        return
   
    print("Datele de intrare corespund restricțiilor impuse.")
    ture_sortate = sorteaza_ture_descrescator(n, ture)
    print(" ".join(map(str, ture_sortate)))
if __name__ == "__main__":
    main()
</syntaxhighlight>

Latest revision as of 03:12, 3 June 2024