Menu
CoddyTech

Second Largest Number

PrincipianteArrays y cadenaspython iconjava iconcpp iconc iconjs icon+10

Recibes una lista de enteros nums. Devuelve su segundo valor distinto más grande: el valor más grande que sea estrictamente menor que el máximo. Los valores pueden repetirse, así que para [5, 5, 3] la respuesta es 3, no 5. La lista siempre contiene al menos dos valores diferentes.

Función

secondLargest(nums: integer-array) → integer
numsinteger-array
la lista de números enteros, con al menos dos valores distintos
Devuelveinteger
el valor más grande que es menor que el máximo

Restricciones

  • 2 ≤ nums.length ≤ 5000
  • -109 ≤ nums[i] ≤ 109
  • nums contiene al menos dos valores distintos.

Ejemplos

Entrada
nums = [4, 9, 2, 7, 9]
Salida
7
Explicación
El máximo es 9. Aparece dos veces, pero una segunda copia del máximo no cuenta, así que la respuesta es el siguiente valor más bajo, 7.
challenge icon

Para ir más allá

¿Puedes devolver el tercer valor distinto más grande en una sola pasada, con tres variables y sin ordenar?

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

Prueba #1

Prueba #2

Prueba #3

Argumento

nums = [4, 9, 2, 7, 9]

Salida Esperada

7