Contest.samara.ru :: соревнования по программированию
Русская версия || English version
Login:
Password:
Забыли пароль?
 пример поиска: Вася Пупкин
 

Что нужнее

Задачу добавил: alef

Успешно сдано решений: 11

Каждую молодую семью надо утварью разной обеспечить. Сначала царь хотел из своих кладовых чашки да плошки им выдать, но призадумался. И то верно: хоть и красива ручная мельница для кофе – а что с молодежи возьмешь: захотят электрическую.

Поэтому – пока идут приготовления к пиру – повелел царь каждой из невесток составить список необходимых покупок. Требования к списку таковы. Во-первых, в нем должно быть перечислено ровно N предметов. Во-вторых, список должен быть упорядочен по «степени необходимости»: на первом месте в списке должен быть самый нужный (по мнению составительницы) предмет, на втором – чуть менее нужный, на третьем – нужный менее, чем первый или второй… Наконец последним следует указать предмет, без которого проще всего обойтись.

Думали целый день невестки, к вечеру списки составили и отдали их царю. Довольно разными списки оказались. И тогда царь принял решение: составить общий список по следующим правилам. В каждом из списков каждому предмету приписывается определенное количество баллов: N – если предмет в списке указан на первом месте, N–1, если на втором, и т.д. Последний предмет оценивается в 1 балл. После этого баллы суммируются по трем спискам, и выбираются самые нужные – т.е. набравшие наибольшее количество баллов N предметов. Однако есть еще одно условие – предметы, которые каждая из невесток указала как самые нужные (первые номера списков), в общем списке непременно должны оказаться. Даже если баллов они наберут меньше, чем необходимо, их следует включить в список вместо последних его элементов. Царю необходима программа, которая составит один список из трех. Ваша задача – написать такую программу.

Формат входного файла input.txt

Первая строка – целое число N (3 <= N <= 1000) – количество предметов, которая каждая из невесток могла включить в список.

Каждая из следующих трех строк представляет собой список наименований N (различных) предметов (строчными латинскими буквами, каждое наименование не длиннее 255 символов) через пробел.

Формат выходного файла output.txt

Первая строка – итоговый список наименований N предметов, составленный по правилам из условия задачи (на первом месте в нем находится предмет, который набрал наибольшее количество баллов, на последнем – наименьшее). Наименования должны быть перечислены через пробел.

 

Примечание. Если у двух (или более) предметов набранные баллы равны, в итоговом списке их следует упорядочить по алфавиту

Пример входного файла

 5
kofemolka mikser mikrovolnovka vodonagrevatel chainik
chainik pylesos stiralnaya sushilka posudomoechnaja
gril toster kofevarka kofemolka kombain

Пример выходного файла

kofemolka chainik gril mikser pylesos

Сдать задачу