Menu
CoddyTech

Leaders in an Array

Ti viene fornito un array di numeri interi nums. Un elemento è un leader quando è maggiore o uguale a ogni elemento alla sua destra. L'ultimo elemento non ha nulla alla sua destra, quindi è sempre un leader. Restituisci tutti i leader, nell'ordine in cui compaiono in nums da sinistra a destra.

Funzione

leaders(nums: integer-array) → integer-array
numsinteger-array
l’array di interi in cui cercare
Restituisceinteger-array
i leader di nums, da sinistra a destra

Vincoli

  • 1 ≤ nums.length ≤ 25000
  • -109 ≤ nums[i] ≤ 109

Esempi

Input
nums = [12, 5, 9, 3, 6, 2]
Output
[12, 9, 6, 2]
Spiegazione
2 è l’ultimo, quindi è in testa. 6 batte il 2 che lo segue, 9 batte 3, 6 e 2, e 12 batte tutti. 5 perde contro 9 e 3 perde contro 6, quindi la risposta è [12, 9, 6, 2].
challenge icon

Per approfondire

Se i valori arrivano uno alla volta e dopo ciascuno devi comunicare i leader finora, come aggiorni la lista in tempo O(1) ammortizzato per valore?

Ripristina il codice
def leaders(nums):
    # Scrivi il codice qui

Test #1

Test #2

Test #3

Argomento

nums = [12, 5, 9, 3, 6, 2]

Output atteso

[12, 9, 6, 2]