Доля выручки категории мороженого

тема: Таблицы: фильтр и группировка · уровень: базовый

Условие

В файле products.csv приведён справочник видов мороженого, которые продаются в киоске. Для каждого вида указана его категория.

В файле sales.csv приведены продажи. Каждая строка продажи ссылается на вид мороженого по идентификатору из файла products.csv.

По заданным категории и дате требуется найти долю выручки этой категории среди выручки всех продаж в указанную дату. Выручка одной продажи равна произведению количества на цену за единицу. Доля выручки вычисляется по формуле 100 * выручка_категории / общая_выручка_за_дату.

Совпадающие строки продаж учитываются по отдельности. При равенстве значений выручек порядок строк файлов не влияет на ответ.

Формат ввода

В первой строке stdin указано название категории мороженого category.

Во второй строке stdin указана дата date в формате ГГГГ-ММ-ДД.

Рядом с программой находятся два CSV-файла в кодировке UTF-8 с разделителем запятая.

Файл products.csv содержит от 300 до 1000 строк данных и заголовок:

product_id,product_name,category

Здесь product_id — целочисленный идентификатор вида мороженого, product_name — его название, category — название категории.

Файл sales.csv содержит от 300 до 1000 строк данных и заголовок:

sale_id,product_id,date,quantity,unit_price

Здесь sale_id — целочисленный идентификатор продажи, product_id ссылается на строку файла products.csv, date — дата продажи, quantity — число проданных порций, unit_price — цена одной порции в рублях.

Формат вывода

Выведите найденную долю выручки в процентах с двумя знаками после точки.

Ограничения

300 <= число строк products.csv <= 1000.

300 <= число строк sales.csv <= 1000.

1 <= product_id <= 1000000, 1 <= sale_id <= 10000000.

Длина product_name — от 1 до 40 символов, длина category — от 1 до 30 символов.

1 <= quantity <= 20, 20 <= unit_price <= 500.

Дата имеет длину 10 символов и формат ГГГГ-ММ-ДД.

Все идентификаторы product_id в файле sales.csv существуют в файле products.csv. Для указанной даты есть хотя бы одна продажа, поэтому общая выручка за дату положительна. Указанная во входе категория присутствует в файле products.csv.

Решить задачу с автопроверкой на Python →

Куда дальше