Menu
CoddyTech

Second Largest Number

Дан список целых чисел nums. Верните второе по величине уникальное значение: наибольшее значение, которое строго меньше максимального. Значения могут повторяться, поэтому для [5, 5, 3] ответ — 3, а не 5. В списке всегда есть как минимум два разных значения.

Функция

secondLargest(nums: integer-array) → integer
numsinteger-array
список целых чисел, содержащий как минимум два различных значения
Возвращаетinteger
наибольшее значение, которое меньше максимального

Ограничения

  • 2 ≤ nums.length ≤ 5000
  • -109 ≤ nums[i] ≤ 109
  • nums содержит как минимум два различных значения.

Примеры

Ввод
nums = [4, 9, 2, 7, 9]
Вывод
7
Пояснение
Максимум — это 9. Оно встречается дважды, но вторая копия максимума не учитывается, поэтому ответ — следующее по величине значение, 7.

lock icon+15 скрытых тестов при отправке

challenge icon

Дополнительный вопрос

Можешь за один проход вернуть третье по величине уникальное значение, используя три переменные и не выполняя сортировку?

Сбросить код
def secondLargest(nums):
    # Напишите код здесь
Тестовые случаи

Случай 1

Случай 2

Случай 3

Ввод

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

Ожидается

7