Ctrl K

Наставник вдвое сильнее

Средняя
В клубе len(ratings) человек, ratings[i] — рейтинг i-го. Их разбивают на пары «наставник — ученик»: пару можно составить, только если рейтинг наставника хотя бы вдвое больше рейтинга ученика (2 · ученик ≤ наставник). Каждый человек входит не больше чем в одну пару. Верните наибольшее число людей, которые окажутся в парах.
Пример 1
ratings=[4, 1, 9, 3] → 4

Пары (1, 4) и (3, 9): у наставника рейтинг минимум вдвое выше. Заняты все четверо.

Пример 2
ratings=[5, 6, 9] → 0

Даже у самого слабого (5) нет никого с рейтингом от 10.

Пример 3
ratings=[2, 2, 5, 3] → 2

Подходит только пятёрка, и она может взять одного ученика: пара одна, заняты двое.

Ограничения
  • 1 ≤ len(ratings) ≤ 10⁵
  • 1 ≤ ratings[i] ≤ 10⁹
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиТройки палочек для треугольника СредняяСамая выгодная подработка для каждого СредняяКрасота клумб на бюджете СложнаяСтудии для записи СредняяТройки с суммой меньше порога Средняя
загружаем Python…
Вход
ratings=[4, 1, 9, 3]
Ожидается
4

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