Зарегистрироваться Войти через вк

В ювелирных магазинах продаются изделия четырёх категорий: A, B, С и D. В город…

В ювелирных магазинах продаются изделия четырёх категорий: A, B, С и D. В городе N был проведён мониторинг цен ювелирных изделий в различных магазинах. Напишите эффективную по времени работы и по используемой памяти программу, которая будет определять для каждой категории ювелирных изделий, сколько магазинов продают его дороже всего.

Описание входных и выходных данных

На вход программе в первой строке подаётся число данныхN о стоимости ювелирных изделий. В каждой из последующихN строк находится информация в следующем формате: <Компания> <Магазин> <Категория> <Цена>, где <Компания> - строка, состоящая не более чем из 20 символов без пробелов, <Магазин>-строка, состоящая не более чем из 20 символов без пробелов, <Категория>-одна из буквA, B, C или D, <Цена>-целое число в диапазоне от 2000 до 700 000, обозначающее стоимость одного изделия в рублях.

<Компания> и <Магазин>, <Магазин> и <Категория>, а также <Категория> и <Цена> разделены только одним пробелом.

Пример входных данных:

5

Кристалл Адамас С 30000

Кристалл Блеск С 30000

Красота Элегант A 5000

Красота Бриллиант А 5000

Шик Классика А 4000

Кристалл Адамас В 10000

Программа должна выводить через пробел 4 числа-количество магазинов, продающих дороже всего изделия категории A, B, C и D соответственно. Если ювелирное изделие какой-либо категории нигде не продаётся, то следует вывести 0.

Пример выходных данных:

2 1 2 0

Напишите эффективную как по времени, так и по памяти программу для решения поставленной задачи, если известно, что вводятся сведения об N изделиях.

Программа считается эффективной по времени, если время работы программы пропорционально N, то есть при увеличении N в k раз время работы программы должно увеличиваться не более чем в k раз. Программа считается эффективной по памяти, если размер памяти, необходимой программе для хранения всех переменных, не увеличивается с ростом числа N.

Максимальная оценка за правильную (не содержащую синтаксических ошибок и дающую правильный ответ при любых допустимых входных данных) программу, эффективную по времени и по памяти,-4 балла.

Максимальная оценка за правильную программу, эффективную только по времени,-3 балла.

Максимальная оценка за правильную программу, не удовлетворяющую требованиям эффективности,-2 балла.

Вы можете написать одну программу или две программы решения задачи (например, одна из программ может быть менее эффективна). Если вы напишете две программы, то каждая из них будет оцениваться независимо от другой, итоговой станет большая из двух оценок. Перед текстом программы обязательно кратко опишите алгоритм решения. Укажите использованный язык программирования и его версию.

Объект авторского права ООО «Легион»

Посмотреть решение

Вместе с этой задачей также решают:

С клавиатуры вводится число записей N , не превышающее 1000, содержащих сведения о сетевом трафике, проходящем через компьютер, а затем сами записи в формате <время> <источник> <приёмник>, где <время> записано в ви…

Метод кодирования шифром Ришелье заключается в следующем: пусть имеется сообщение, записанное с помощью букв латинского алфавита, и набор перестановок различной длины, тогда к сооб…

Имеется набор данных, состоящий из пар целых положительных чисел. Необходимо выбрать из каждой пары ровно одно число так, чтобы сумма всех выбранных чисел при делении на 5 давала о…

У Димы есть много книг, которые он ещё не прочитал. Дима обожает толстые старые книги. Кроме того, он не любит произведения с длинными названиями. В очередной раз, когда ему надо б…