Исходный пост

Для данного массива целых чисел найдите и распечатайте максимальное количество целых чисел, которое вы можете выбрать из массива, так чтобы абсолютная разница между любыми двумя из выбранных целых чисел была меньше или равна 1. Например, если ваш массив равен [1, 1, 2, 2, 4, 4, 5, 5, 5], вы можете создать два подмассива, отвечающих критерию: [1, 1, 2, 2] и [4, 4, 5, 5, 5]. Максимальная длина подмассива - 5 элементов. Программа должна возвращать целое число, представляющее длину самого длинного массива, который может быть создан.

Формат ввода

  • a: массив целых чисел

Ограничения

  • 2 <= n <= 100
  • 0 < a[i] < 100
  • Ответ будет ›= 2

Решение

Обратите внимание на ограничения этого упражнения. Элементы могут быть в диапазоне от 0 до 100. Таким образом, максимум у нас может быть 100 чисел. Решаю сделать следующие шаги:

  • Сгенерируйте массив RepeatingList длиной 100. И установите для всех элементов значение 0. Этот массив будет содержать количество всех повторений каждого элемента.
  • For через входной массив и увеличить элемент по индексу, равному итерируемому элементу - 1.
  • Для через RepeatingList и суммируйте каждый элемент со следующим элементом в последовательности. Самая большая встреченная сумма - наш ответ

Мои социальные сети

LinkedIn Twitter Оригинальный блог Github HackerRank

Фото Льюиса Нгуги на Unsplash