10895. Гангстери


Відправити розв'язок

Бали: 100
Time limit: 1.0s
Memory limit: 500M

Authors:
Problem type
Allowed languages
C++, Java, Pascal, Python

\(𝑁\) гангстерів збираються до ресторану. \(𝑖\)-й гангстер приходить в момент часу \(𝑇_𝑖\) і має багатство \(𝑃_𝑖\).

Двері ресторану мають \(𝐾+1\) ступінь відкритості, вони позначаються цілими числами з інтервалу \([0, 𝐾]\). Ступінь відкритості дверей може змінюватися на одиницю в одиницю часу, тобто двері можуть відчинитися на одиницю, закритися на одиницю або залишитися в тому ж стані.

У початковий момент часу двері зачинені (ступінь відкритості 0). \(𝑖\) -й гангстер заходить у ресторан, тільки якщо двері відкриті спеціально для нього, тобто коли ступінь відкритості дверей відповідає його повноті \(𝑆_𝑖\) . Якщо в момент, коли гангстер підходить до ресторану, ступінь відкритості дверей не відповідає його повноті, він іде і більше не повертається. Ресторан працює в інтервалі часу \([0, 𝑇]\).

Потрібно зібрати гангстерів з максимальним сумарним багатством у ресторані, відчиняючи та закриваючи двері відповідним чином.

Формат вхідних даних

У першому рядку знаходяться числа \(𝑁, 𝐾, 𝑇\).

У другому - \(𝑇_1, 𝑇_2, ..., 𝑇_𝑁\), в третьому - \(𝑃_1, 𝑃_2, ..., 𝑃_𝑁\).

В четвертому - \(𝑆_1, 𝑆_2, ..., 𝑆_𝑁\).

Числа у рядках розділені пробілами. \(1 \le 𝑁 \le 100\), \(1 \le 𝐾 \le 100\), \(1 \le 𝑇 \le 30 000\), \(0 \le 𝑇_𝑖 \le 𝑇\) , \(1 \le 𝑃_𝑖 \le 300\), \(1 \le S_i \le K\), всі числа цілі.

Формат вихідних даних

Вивести одне число - максимальне сумарне багатство гангстерів, які потрапили до ресторану. Якщо зайти нікому не вдалося, вивести 0.

Приклад вхідних даних

2 10 20
10 16
10 11
10 7

Приклад вихідних даних

21

Коментарі

Ще немає коментарів.