Контест Junior Потоки и буферы обновлено
Итоги платежей из CSV-выгрузки
Условие
На вход подаётся CSV-выгрузка платежей. Первая строка заголовок user,amount, дальше строки <логин>,<сумма>, сумма целая (в рублях), может быть отрицательной (возврат). В конце могут быть пустые строки, их пропускай.
Выведи по каждому пользователю строку <логин> <итог>: по убыванию итога, при равенстве по логину в порядке возрастания кодов символов. Пользователь с итогом 0 тоже выводится. Если платежей нет, вывод пустой.
До 2·10⁵ строк, логины из латинских букв и цифр, итоги помещаются в обычный number без потери точности.
Пример
user,amount
anna,500
boris,300
anna,-200
vera,300
anna 300
boris 300
vera 300
Как подойти
Подсказки: 2
Mapлогин → сумма за один проход.- Сортировка с двумя ключами:
b[1] - a[1] || сравнение логинов.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.
Термины по теме
Ещё по теме «Потоки и буферы»
- Пачки из асинхронного итератора
- Разбиение потока на строки по чанкам
- Топ эндпоинтов по access-логу с нормализацией маршрутов
- Сессии пользователей по потоку событий
- Код-ревью: выгрузка и загрузка больших файлов
- Загрузка файлов по 5 ГБ через Node-сервис
- Чем pipeline лучше pipe
- Buffer.allocUnsafe