2594 - Partionare

From Bitnami MediaWiki
Revision as of 10:25, 18 March 2023 by Adina Timiș (talk | contribs) (Pagină nouă: ==Cerința== Se citește un număr natural n și un șir de n numere întregi. Să se aranjeze elementele astfel încât în prima parte a șirului să fie valorile pare în ordine crescătoare, iar în partea a doua valorile impare, de asemenea în ordine crescătoare. ==Date de intrare== Programul citește de la tastatură numărul n și apoi cele n elemente ale șirului. ==Date de ieșire== Programul afișează pe ecran elementele șirului după prelucrare cu spații intr...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Cerința

Se citește un număr natural n și un șir de n numere întregi. Să se aranjeze elementele astfel încât în prima parte a șirului să fie valorile pare în ordine crescătoare, iar în partea a doua valorile impare, de asemenea în ordine crescătoare.

Date de intrare

Programul citește de la tastatură numărul n și apoi cele n elemente ale șirului.

Date de ieșire

Programul afișează pe ecran elementele șirului după prelucrare cu spații intre ele.

Restricții și precizări

  • 1 ≤ n ≤ 1000
  • cele n numere pot fi reprezentate pe 32 de biți cu semn.

Exemplul 1

Intrare
10
5 4 3 2 1 6 7 8 9 18
Ieșire
Datele de intrare corespund restricțiilor impuse.
2 4 6 8 18 1 3 5 7 9

Exemplul 2

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

Rezolvare

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

  1. 2594 - Partionare

def sort_pare_impare(n, lista):

   pare = []  
   impare = []  
   for num in lista:
       if num % 2 == 0:
           pare.append(num)
       else:
           impare.append(num)
   pare.sort()  
   impare.sort()  
   rezultat = pare + impare  
   print(" ".join(str(num) for num in rezultat))


if __name__ == "__main__":

   n = int(input("Introduceți numărul de elemente: "))
   if n < 1 or n > 1000:
       print("Datele de intrare nu corespund restricțiilor impuse.")
   else:
       print("Datele de intrare corespund restricțiilor impuse.")
       lista = [int(num) for num in input("Introduceți șirul de numere: ").split()]


       sort_pare_impare(n, lista)


</syntaxhighlight>