masters[i] — уровень навыка i-го мастера. Поступили заказы: orders[j] = [need, pay] означает, что заказ j требует навыка ровно need и приносит pay.
Каждый мастер выполняет не больше одного заказа и только такой, у которого need равен его навыку. Кроме того, сегодня вышел ещё один мастер-универсал: он может взять любой один заказ, независимо от навыка. Каждый заказ выполняется не больше одного раза.
Верните наибольший суммарный доход.masters=[2, 2, 5], orders=[[2, 30], [2, 50], [2, 20], [5, 10], [7, 40]] → 130
Два мастера с навыком 2 берут заказы за 50 и 30, мастер с навыком 5 — заказ за 10. Универсал берёт самый дорогой из оставшихся — за 40. Итого 130.
masters=[3], orders=[[1, 8], [2, 9]] → 9
Мастеру с навыком 3 подходящих заказов нет, а универсал берёт один заказ — за 9.
masters=[4, 4], orders=[[4, 6], [4, 6], [4, 6]] → 18
len(masters) ≤ 10⁵masters[i] ≤ 10⁹len(orders) ≤ 10⁵orders[j] = [need, pay], 1 ≤ need, pay ≤ 10⁹masters=[2, 2, 5], orders=[[2, 30], [2, 50], [2, 20], [5, 10], [7, 40]]
130
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 207 тестов на сервере, включая скрытые.