2692 - Lung Sort Desc

From Bitnami MediaWiki
Revision as of 16:58, 24 March 2023 by Adina Timiș (talk | contribs) (Pagină nouă: ==Cerința== Se dă un șir de caractere în care cuvintele sunt formate din litere mici și mari ale alfabetului englez și sunt separate prin spații. Să se afișeze cuvintele pe ecran, fiecare cuvânt pe câte o linie, în ordinea descrescătoare a numărului de litere. Dacă două cuvinte au același număr de litere atunci ele se vor afișa în ordine lexicografică. ==Date de intrare== Programul citește de la tastatură șirul de caractere. ==Date de ieșire== Progra...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Cerința

Se dă un șir de caractere în care cuvintele sunt formate din litere mici și mari ale alfabetului englez și sunt separate prin spații. Să se afișeze cuvintele pe ecran, fiecare cuvânt pe câte o linie, în ordinea descrescătoare a numărului de litere. Dacă două cuvinte au același număr de litere atunci ele se vor afișa în ordine lexicografică.

Date de intrare

Programul citește de la tastatură șirul de caractere.

Date de ieșire

Programul va afișa cuvintele din șir pe ecran, conform cerinței.

Restricții și precizări

  • șirul va conține maximum 255 de caractere;

Exemplul 1

Intrare
ana are mere
Ieșire
Datele de intrare corespund restricțiilor impuse.
mere
ana
are

Exemplul 2

Intrare
1234
Ieșire
Datele de intrare nu corespund restricțiilor impuse.

Rezolvare

<syntaxhighlight lang="python" line="">

  1. 2692- Lung Sort Desc

def sortare_cuvinte(s):

   cuvinte = s.split()
   numar_litere = [len(cuvant) for cuvant in cuvinte]
   
   cuvinte_sortate = sorted(cuvinte, key=lambda x: (-len(x), x))
   for cuvant in cuvinte_sortate: 
       print(cuvant)

if __name__ == '__main__':

   s = input('Introduceți șirul de caractere: ')
   if len(s) <= 255 and not any(c.isdigit() for c in s):
       print("Datele de intrare corespund restricțiilor impuse.")
       sortare_cuvinte(s)
   else:
       print("Datele de intrare nu corespund restricțiilor impuse.")

</syntaxhighlight>