Todos los desafíos
Fácil 0 resueltos 0% de aceptación

Segundo valor más grande

Encuentra el segundo valor distinto más grande.

Devuelve el segundo valor distinto más grande de la lista. Los valores repetidos cuentan solo una vez.

Implementa second_largest(numbers).

Entrada

numbers: Una lista de enteros no negativos.

Salida

Devuelve el segundo valor distinto más grande, o -1 si no existe.

Restricciones

0 ≤ longitud ≤ 100,000; 0 ≤ cada valor ≤ 10⁹

Ejemplos

Ejemplo 1
Entrada:
numbers = [4, 9, 7, 9]

Salida esperada:
expected = 7
Entrada:
std::vector<long long> numbers = {4, 9, 7, 9};

Salida esperada:
long long expected = 7;
Entrada:
long[] numbers = new long[] {4, 9, 7, 9};

Salida esperada:
long expected = 7;

Explicación

Los valores distintos son 9, 7, 4; el segundo más grande es 7.

Ejemplo 2
Entrada:
numbers = [5, 5]

Salida esperada:
expected = -1
Entrada:
std::vector<long long> numbers = {5, 5};

Salida esperada:
long long expected = -1;
Entrada:
long[] numbers = new long[] {5, 5};

Salida esperada:
long expected = -1;

Explicación

Solo existe un valor distinto, así que la respuesta es -1.

Referencias

Este reto está adaptado para CodeUtility. Sigue el enunciado y las restricciones indicadas arriba.

Aprende de otros

Soluciones de la comunidad

Aún no hay soluciones publicadas. Resuelve este reto para compartir la primera.