Codeforces Round 626 (Div. 1, по задачам Открытой олимпиады школьников по программированию) |
---|
Закончено |
Одно известное реалити-шоу набирает участников для третьего сезона! Собеседование прошли $$$n$$$ кандидатов, пронумерованных от $$$1$$$ до $$$n$$$. $$$i$$$-й кандидат обладает агрессивностью $$$l_i$$$, и для того, чтобы взять этого кандидата, организаторам шоу придется потратить $$$s_i$$$ рублей.
Ведущая реалити-шоу листает досье всех кандидатов от $$$i=1$$$ до $$$i=n$$$ в порядке возрастания номеров, и для каждого из них она принимает решение, стоит ли взять этого кандидата в шоу. Если агрессивность кандидата $$$i$$$ строго выше, чем агрессивность какого-либо из уже взятых кандидатов, то кандидата $$$i$$$ она точно брать откажется. В противном случае ведущая может на свой выбор как взять кандидата в шоу, так и не взять. Ведущая хочет выбрать участников таким образом, чтобы максимизировать прибыль.
Рассматриваемое реалити-шоу получает доход следующим образом. Для каждого значения агрессивности $$$v$$$ указана доходность $$$c_v$$$, которая может быть как положительной, так и отрицательной. Участники, попавшие в проект, поочередно выходят на сцену в порядке возрастания номеров. Как только участник с номером $$$i$$$ выходит на сцену, происходит следующее:
Ведущая шоу хочет выбрать команду таким образом, чтобы максимизировать прибыль, которая определяется как суммарный доход от происходящего на сцене, минус суммарные затраты на приглашение участников (которые определяются как сумма $$$s_i$$$ для выбранных участников). Помогите ведущей сделать шоу максимально прибыльным!
В первой строке вводится два целых числа $$$n$$$ и $$$m$$$ ($$$1 \le n, m \le 2000$$$) — количество кандидатов и максимальное начальное значение агрессивности кандидатов.
Во второй строке вводится $$$n$$$ целых чисел $$$l_i$$$ ($$$1 \le l_i \le m$$$) — агрессивность каждого из кандидатов.
В третьей строке вводится $$$n$$$ целых чисел $$$s_i$$$ ($$$0 \le s_i \le 5000$$$) — количество рублей, которое придется заплатить для найма каждого из кандидатов.
В четвертой строке вводится $$$n + m$$$ целых чисел $$$c_i$$$ ($$$|c_i| \le 5000$$$) — уровень доходности для каждого из значений агрессивности.
Гарантируется, что при данных ограничениях значение агрессивности участников не может превысить $$$n + m$$$.
Выведите одно целое число — максимальную прибыль шоу.
5 4 4 3 1 2 1 1 2 1 2 1 1 2 3 4 5 6 7 8 9
6
2 2 1 2 0 0 2 1 -100 -100
2
5 4 4 3 2 1 1 0 2 6 7 4 12 12 12 6 -3 -5 3 10 -4
62
В первом примере выгоднее всего взять кандидатов с номерами $$$1, 2, 3, 5$$$. В таком случае шоу заплатит им за участие $$$1 + 2 + 1 + 1 = 5$$$ рублей. На сцене же будет происходить следующее:
Таким образом, доход шоу составит $$$4 + 3 + 1 + 1 + 2=11$$$ рублей, а суммарная прибыль будет равна $$$11 - 5 = 6$$$ рублям.
Во втором примере мы не можем пригласить обоих кандидатов, так как значение агрессивности второго кандидата больше, поэтому нам выгоднее взять кандидата с номером $$$1$$$.
Название |
---|