Ctrl K

Рейтинг финалистов по голосам жюри

Средняя
Финалистов конкурса обозначают разными заглавными латинскими буквами. Каждый судья сдаёт бюллетень — строку, где все финалисты выписаны от лучшего к худшему. Бюллетени собраны в массив ballots. Итоговый рейтинг строится так: выше тот, кого чаще ставили на первое место. Если по первым местам ничья, сравнивают количество вторых мест, затем третьих и так далее. Если финалисты набрали поровну голосов на каждом месте, выше тот, чья буква раньше в алфавите. Верните строку из букв всех финалистов в порядке итогового рейтинга.
Пример 1
ballots=["PQR", "QPR", "PRQ"] → 'PQR'

P стоит первым у двух судей, Q — у одного, R — ни у кого. Поэтому порядок P, Q, R решается уже по первым местам.

Пример 2
ballots=["MN", "NM"] → 'MN'

У M и N поровну голосов на каждом месте — ничья решается по алфавиту: сначала M.

Пример 3
ballots=["KDA"] → 'KDA'
Ограничения
  • 1 ≤ len(ballots) ≤ 10⁵
  • 1 ≤ len(ballots[i]) ≤ 26
  • Все бюллетени одной длины
  • Бюллетень состоит из заглавных латинских букв без повторов
  • Во всех бюллетенях один и тот же набор букв
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиСамые частые запросы СредняяПалиндромы из общих букв СредняяРазложить анаграммы по группам СредняяБольше трети голосов СредняяСамые частые значения Средняя
загружаем Python…
Вход
ballots=["PQR", "QPR", "PRQ"]
Ожидается
'PQR'

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