Menu
CoddyTech

Leaders in an Array

Recibes un arreglo de enteros nums. Un elemento es un líder cuando es mayor o igual que todos los elementos que están a su derecha. El último elemento no tiene nada a su derecha, así que siempre es un líder. Devuelve todos los líderes, en el orden en que aparecen en nums de izquierda a derecha.

Función

leaders(nums: integer-array) → integer-array
numsinteger-array
el arreglo de enteros que se va a buscar
Devuelveinteger-array
los líderes de nums, de izquierda a derecha

Restricciones

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

Ejemplos

Entrada
nums = [12, 5, 9, 3, 6, 2]
Salida
[12, 9, 6, 2]
Explicación
2 es el último, así que va primero. 6 vence al 2 que le sigue, 9 vence a 3, 6 y 2, y 12 vence a todo. 5 pierde contra 9 y 3 pierde contra 6, así que la respuesta es [12, 9, 6, 2].
challenge icon

Para ir más allá

Si los valores llegan de uno en uno y después de cada uno debes informar de los líderes hasta el momento, ¿cómo actualizas la lista en tiempo amortizado O(1) por valor?

Restablecer código
def leaders(nums):
    # Escribe el código aquí

Prueba #1

Prueba #2

Prueba #3

Argumento

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

Salida Esperada

[12, 9, 6, 2]