Задача 11: Содержит дубликат 2

Напишите определение функции def contains_nearby_duplicate(nums, k), которая принимает два параметра:

  1. nums (List[int]):
    • Массив целых чисел.
    • Может содержать как уникальные, так и повторяющиеся элементы.
    • Длина массива варьируется, включая пустой массив.
  2. k (int):
    • Целое положительное число.
    • Определяет максимальное расстояние между индексами двух элементов, которые могут быть равны.
    • Если значение k слишком мало, функция может вернуть False даже при наличии одинаковых элементов в массиве, так как разница индексов будет больше k.

Функция должна вернуть True, если:

  • В массиве существуют два различных индекса i и j, такие что:
    • nums[i] == nums[j] — элементы на этих индексах равны.
    • abs(i - j) <= k — разница между индексами не превышает значение k.

В противном случае функция возвращает False.


Примеры работы функции:

Пример 1:

Ввод:

nums = [1, 2, 3, 1], k = 3

Вывод:

True

Объяснение:
Элементы nums[0] и nums[3] равны (1), и их индексы различаются на 3, что удовлетворяет условию.

Пример 2:

Ввод:

nums = [1, 0, 1, 1], k = 1

Вывод:

True

Объяснение:
Элементы nums[2] и nums[3] равны (1), и их индексы различаются на 1, что удовлетворяет условию.

Пример 3:

Ввод:

nums = [1, 2, 3, 1, 2, 3], k = 2

Вывод:

False

0

Вы должны Войти или Зарегистрироваться чтобы оставлять комментарии