Перцентиль сумм чеков

тема: Описательная статистика · уровень: средний

Условие

В файле data.csv хранятся сведения о чеках сети супермаркетов. В столбце total_rub записана сумма чека в рублях. Пустое значение этого столбца означает, что сумма чека не была передана кассой.

Требуется найти перцентиль порядка p для непустых сумм чеков методом ближайшего ранга. Пусть после удаления пропусков осталось m сумм, отсортированных по неубыванию: x_1, x_2, ..., x_m. Номер ранга вычисляется по формуле r = ceil(p * m / 100). Ответом является значение x_r.

Пропуски в столбце total_rub не учитываются. Гарантируется, что после удаления пропусков остаётся хотя бы одна сумма. При равенстве сумм их порядок не важен: все одинаковые значения считаются одним и тем же возможным ответом.

Формат ввода

В первой и единственной строке stdin задано целое число p — порядок перцентиля.

Рядом с программой расположен файл data.csv в кодировке UTF-8 с разделителем-запятой. Первая строка файла содержит заголовки:

receipt_id,store,total_rub,items_count

Столбец receipt_id содержит идентификатор чека, store — название магазина, total_rub — целую сумму чека в рублях или пустую строку, items_count — число товаров в чеке.

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

Выведите целую сумму чека, являющуюся перцентилем порядка p методом ближайшего ранга.

Ответ выводится как целое число без дробной части. Округление значения суммы не выполняется.

Ограничения

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

Куда дальше