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.

lock icon+15 pruebas ocultas al enviar

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í
Casos de prueba

Caso 1

Caso 2

Caso 3

Entrada

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

Esperado

7