2257 - Poz Max 1

De la Universitas MediaWiki
Versiunea din 18 martie 2023 18:52, autor: MiclausIoana (discuție | contribuții) (Pagină nouă: Sursă: [https://www.pbinfo.ro/probleme/2257/pozmax1] == Cerință == Se dă un şir cu '''n''' elemente, numere reale, numerotate de la '''1''' la '''n'''. Determinaţi numărul de ordine al primei şi al ultimei apariţii a valorii maxime din şir. == Date de intrare == Programul citește numărul '''n''', apoi '''n''' numere reale. == Date de ieșire == Programul va afișa două numere '''p''' şi '''u''', separate printr-un spațiu, reprezentând valorile cerute. == Restr...)
(dif) ← Versiunea anterioară | Versiunea curentă (dif) | Versiunea următoare → (dif)

Sursă: [1]

Cerință

Se dă un şir cu n elemente, numere reale, numerotate de la 1 la n. Determinaţi numărul de ordine al primei şi al ultimei apariţii a valorii maxime din şir.

Date de intrare

Programul citește numărul n, apoi n numere reale.

Date de ieșire

Programul va afișa două numere p şi u, separate printr-un spațiu, reprezentând valorile cerute.

Restricții și precizări

  • n este un număr natural cu cel mult 9 cifre;

Exemplu

Intrare
8
3.5 7 -4 7 2 7 6.3 5
Ieșire
2 6

Rezolvare

n = int(input("Introduceți numărul de numere: "))
lst = list(map(float, input("Introduceți valorile: ").split()))

p = u = 0
mx = -1
for i, x in enumerate(lst, 1):
    if x > mx:
        mx = x
        p = i
    if x == mx:
        u = i

print("Valorile cerute sunt: "p, u)