Ctrl K

Без пары в отсортированном ряду

Средняя
Дан отсортированный по неубыванию массив values. Каждое число встречается в нём ровно два раза, и только одно — ровно один раз. Найдите и верните это число. Линейный проход очевиден. Попробуйте решить за O(log n) времени и O(1) дополнительной памяти.
Пример 1
values=[2, 2, 5, 5, 6, 9, 9] → 6

Все числа стоят парами, кроме 6.

Пример 2
values=[0, 4, 4, 7, 7] → 0

Одинокое число может стоять в самом начале.

Пример 3
values=[13] → 13
Ограничения
  • 1 ≤ len(values) ≤ 10⁵
  • 0 ≤ values[i] ≤ 10⁵
  • values отсортирован по неубыванию
  • Ровно одно число встречается один раз, все остальные — ровно по два
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиПоиск в сдвинутом отсортированном массиве СредняяПервая и последняя копия СредняяПоиск в таблице-цепочке СредняяПоиск в сдвинутом массиве с повторами СредняяМинимум в сдвинутом списке Средняя
загружаем Python…
Вход
values=[2, 2, 5, 5, 6, 9, 9]
Ожидается
6

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 115 тестов на сервере, включая скрытые.