1911 - Sort Indici

From Bitnami MediaWiki
Revision as of 18:35, 13 March 2023 by Adina Timiș (talk | contribs) (Pagină nouă: == Cerința == Se dă un vector cu n elemente, numere naturale. Afișați în ordine crescătoare elementele iar după fiecare element, inserați indicele poziției pe care acesta se află înainte ca vectorul să fie sortat. Daca există mai multe elemente cu aceeași valoare, indicii acestora se vor afișa în ordine crescătoare. == Date de intrare == Programul citește de la tastatură numărul n, iar apoi n numere naturale, separate prin spații. == Date de ieșire == P...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Cerința

Se dă un vector cu n elemente, numere naturale. Afișați în ordine crescătoare elementele iar după fiecare element, inserați indicele poziției pe care acesta se află înainte ca vectorul să fie sortat. Daca există mai multe elemente cu aceeași valoare, indicii acestora se vor afișa în ordine crescătoare.

Date de intrare

Programul citește de la tastatură numărul n, iar apoi n numere naturale, separate prin spații.

Date de ieșire

Programul va afișa pe ecran șirul de numere separate prin spațiu, respectând cerința cerută.

Restricții și precizări

1 ≤ n ≤ 100
cele n numere citite vor fi mai mici decât 1.000.000.000
numerotarea vectorului începe de la 1

Exemplul 1

Intrare
7
12 8 9 0 19 2 8
Ieșire
0 4 2 6 8 2 8 7 9 3 12 1 19 5


Exemplul 2

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



Rezolvare

<syntaxhighlight lang="python" line>

  1. 1911 - Sort Indici

def sortare_inserare_indice(v):

   n = len(v)
   first = [(v[i], i+1) for i in range(n)]
   first.sort()
   rezultat = 
   for val, index in first:
       rezultat += f'{val} {v.index(val)+1} '
   return rezultat.strip()

if __name__== '__main__':

   n = int(input())
   v = list(map(int, input().split()))
   print(sortare_inserare_indice(v))
   print("Datele de intrare corespund restricțiilor impuse.")

else:

   print("Nu au fost respectate restricțiile impuse.")

</syntaxhighlight>