Menu
CoddyTech

Second Largest Number

PoczątkującyTablice i napisypython iconjava iconcpp iconc iconjs icon+10

Otrzymujesz listę liczb całkowitych nums. Zwróć jej drugą co do wielkości różną wartość: największą wartość, która jest ściśle mniejsza od maksimum. Wartości mogą się powtarzać, więc dla [5, 5, 3] odpowiedzią jest 3, a nie 5. Lista zawsze zawiera co najmniej dwie różne wartości.

Funkcja

secondLargest(nums: integer-array) → integer
numsinteger-array
lista liczb całkowitych zawierająca co najmniej dwie różne wartości
Zwracainteger
największa wartość mniejsza od maksimum

Ograniczenia

  • 2 ≤ nums.length ≤ 5000
  • -109 ≤ nums[i] ≤ 109
  • nums zawiera co najmniej dwie różne wartości.

Przykłady

Wejście
nums = [4, 9, 2, 7, 9]
Wyjście
7
Wyjaśnienie
Maksimum to 9. Występuje dwa razy, ale druga kopia maksimum się nie liczy, więc odpowiedzią jest kolejna niższa wartość, 7.

lock icon+15 ukrytych testów przy wysłaniu

challenge icon

Pytanie dodatkowe

Czy potrafisz zwrócić trzecią największą różną wartość w jednym przebiegu, używając trzech zmiennych i bez sortowania?

Zresetuj kod
def secondLargest(nums):
    # Napisz tutaj kod
Przypadki testowe

Przypadek 1

Przypadek 2

Przypadek 3

Wejście

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

Oczekiwane

7