Добро пожаловать в ваш первый день в PPCG Inc. Как наш новый сортировщик документов для младших помощников, вы несете ответственность за то, чтобы все документы, которые мы отправили вам, были заархивированы в алфавитном порядке. Это так просто, обезьяна может это сделать. Ну, образно говоря, как мы наняли обезьяну, чтобы сделать это. Угадай, что? Оказывается, обезьянам не хватает понимания нашего алфавита. Во всяком случае, сейчас нет времени, чтобы исправить беспорядок, так что просто постарайтесь не усугубить ситуацию, хорошо? Тогда доберитесь до этого! Если вы проголодались, у кулера с водой есть бананы. Удачи!
Описание вакансии
вход
- Вы получите список строк (архив) и строку, которую необходимо добавить в этот список (документ)
- Все строки будут содержать только заглавные буквы, строчные буквы и пробелы
- Строки всегда начинаются и заканчиваются буквой
задача
Определите целевую позицию документа: позицию, которую он должен получить в архиве. Целевая позиция может быть определена следующим образом:
- Для каждой позиции:
- Подсчитайте количество строк в архиве до той позиции, которые расположены в алфавитном порядке перед документом
- Подсчитайте количество строк в архиве после этой позиции, которые расположены в алфавитном порядке после документа
- Определите счет позиции как сумму двух вышеупомянутых пунктов.
- Целевой позицией документа является позиция с наивысшим баллом
- В случае ничьей все позиции с наибольшим количеством очков одинаково действительны как целевая позиция. Только один должен быть выбран.
При сортировке:
- Прописные и строчные буквы эквивалентны
- Пробелы идут перед буквами
Выход
- Архив с добавленным в него документом в любой форме
ИЛИ
- Целевая позиция документа, в индексе на основе 0 или 1
Оценка работы
Побеждает несколько байтов!
Пример ввода / вывода
Archive:
Applebuck Season
Friendship is Magic
The Ticket Master
Griffon the BrushOff
Boast Busters
Bridle Gossip
Document: Dragonshy
Position scores (0-based index):
0: 0 + 3 = 3
1: 1 + 3 = 4
2: 1 + 2 = 3
3: 1 + 1 = 2
4: 1 + 0 = 1
5: 2 + 0 = 2
6: 3 + 0 = 3
Target position: 1