n сотрудников. У сотрудника i есть ранг ranks[i] и бонус bonuses[i].
Для каждого сотрудника i посмотрите на всех, чей ранг **строго меньше** ranks[i], и выберите из их бонусов не больше k штук так, чтобы сумма была максимальной. Если младших по рангу нет, сумма равна 0.
Верните список длины n, где i-й элемент — эта максимальная сумма для сотрудника i.ranks=[3, 1, 4, 2], bonuses=[7, 9, 5, 6], k=2 → [15, 0, 16, 9]
У сотрудника 0 (ранг 3) младше него сотрудники 1 и 3 с бонусами 9 и 6 — сумма 15. У сотрудника 1 младших нет — 0. У сотрудника 2 (ранг 4) младшие все остальные, два лучших бонуса — 9 и 7, итого 16. У сотрудника 3 (ранг 2) младший только сотрудник 1 — 9.
ranks=[5, 5, 2], bonuses=[4, 8, 3], k=3 → [3, 3, 0]
Равный ранг не считается младшим: сотрудники 0 и 1 могут взять только бонус сотрудника 2, то есть 3.
ranks=[1, 2, 3, 4], bonuses=[10, 1, 1, 1], k=1 → [0, 10, 10, 10]
len(ranks) == len(bonuses) == nranks[i], bonuses[i] ≤ 10⁶ranks=[3, 1, 4, 2], bonuses=[7, 9, 5, 6], k=2
[15, 0, 16, 9]
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 109 тестов на сервере, включая скрытые.