← Все треки

Со скрининга

Массивы на собеседовании

Хеш-таблица, два указателя и одно жёсткое уточнение. С этого набора начинается большинство живых секций по массивам.

Код можно запускать, разбор открыт. Внутри шага задачи усложняются, следующий шаг уже про другую формулировку.

Создайте аккаунт, чтобы видеть прогресс по треку.

Шаг 1. Хеш за один проход

Значение становится ключом. Сначала пара с заданной суммой, потом факт дубликата, потом общие элементы двух массивов.

  1. — 3024. Две суммы Easy 1490 ₽ 7 решили
  2. — 3019. Содержит дубликат Easy 1490 ₽ 11 решили
  3. — 3021. Пересечение двух массивов Easy 1490 ₽ 7 решили

Шаг 2. Частоты

Та же таблица хранит счётчик. Сначала k самых частых элементов, потом самая длинная непрерывная цепочка чисел.

  1. — 5227. K самых частых элементов Easy 1490 ₽ 2 решили
  2. — 5229. Самая длинная последовательность чисел Medium 1490 ₽ 1 решил

Шаг 3. Два указателя

Сжатие отсортированного массива и место подальше от занятых. Затем пара стенок с краёв и тройка с суммой ноль: каждая задача добавляет один ход к предыдущей.

  1. — 3016. Удаление дубликатов из отсортированного массива Easy 1490 ₽ 15 решили
  2. — 5809. Самое дальнее место в ряду Medium 1490 ₽ 0 решили
  3. — 5201. Контейнер с наибольшим количеством воды Medium 1490 ₽ 1 решил
  4. — 5202. Три суммы в ноль Medium 1490 ₽ 1 решил

Шаг 4. Уточнение после рабочего решения

Произведение всех элементов кроме текущего, поиск повтора и вода между столбцами. Эти формулировки дают, когда простой проход уже написан.

  1. — 2005. Произведение элементов массива кроме себя Medium 1490 ₽ 7 решили
  2. — 2012. Поиск дубликата в массиве Medium 1490 ₽ 9 решили
  3. — 5401. Собранная дождевая вода Hard 1490 ₽ 2 решили

Шаг 5. Куча

Слияние k отсортированных списков: на каждом шаге достаёте текущий минимум. Так на собеседовании проверяют, что куча называется вовремя.

  1. — 5806. Слияние k отсортированных списков Hard 1490 ₽ 0 решили