Парковка#291

Парковка

1 секунда
128 мегабайтів
Дуже легка

Парковка має місць, пронумерованих від до включно. Парковка відкривається порожньою щоранку і працює протягом дня наступним чином. Коли автомобіль приїжджає на парковку, паркувальник перевіряє, чи є вільні місця. Якщо таких немає, автомобіль чекає біля в'їзду до тих пір, поки звільниться якесь місце. Якщо є вільне місце, або як тільки воно звільняється, автомобіль займає вільне місце для паркування. Якщо є кілька вільних паркувальних місць, автомобіль займає місце з найменшим номером. Коли приїжджають паркуватися інші автомобілі, але вже є автомобіль, що очікує, вони шикуються в чергу на в'їзді в тому порядку, в якому приїхали. Після того, як звільняється паркувальне місце, його займає перший автомобіль з черги (тобто той, який прибув паркуватися першим).

Вартість паркування одного автомобіля в доларах визначається як добуток ваги цього автомобіля в кілограмах на тариф його паркувального місця. Вартість паркування автомобіля не залежить від того, скільки часу цей автомобіль знаходиться на парковці.

Паркувальник знає, що сьогодні на парковку приїде автомобілів, і він знає порядок їх приїзду та від'їзду. Допоможіть йому підрахувати, скільки доларів він заробить сьогодні.

Напишіть програму, яка за заданими тарифами паркувальних місць, вагами автомобілів та порядком, в якому автомобілі приїжджають і виїжджають, визначає прибуток паркувальника в доларах.

Вхідні дані

Перший рядок містить два цілі числа — кількість паркувальних місць (1 \leq n \leq 100) та кількість автомобілів (1 \leq m \leq 2000), розділених проміжком.

Наступні рядків описують тарифи паркувальних місць, -ий з цих рядків містить одне ціле число r_s (1 \leq r_s \leq 100) — тариф паркувального місця з номером у доларах за кілограм.

Наступні рядків описують ваги автомобілів. Автомобілі пронумеровані в довільному порядку від до включно, -ий з цих рядків містить одне ціле число w_k (1 \leq w_k \leq 10000) — вагу автомобіля з номером в кілограмах.

Наступні рядків описують приїзд та виїзд усіх автомобілів в хронологічному порядку. Додатне ціле число показує, що автомобіль з номером приїжджає на парковку. Від'ємне ціле число показує, що автомобіль з номером їде з парковки. Жодний автомобіль не виїжджає з парковки до свого приїзду, і всі автомобілі від до включно з'являться в цій послідовності рядків рівно рази, один раз як приїжджає, і другий — як виїжджає. До того ж, жоден з автомобілів не виїде з парковки, поки не займе місце на парковці (тобто, жодний автомобіль не виїде, поки стоїть у черзі).

Вихідні дані

Виведіть одне ціле число — загальну кількість доларів, яку заробить сьогодні паркувальник.

Приклади

Приклад 1

Loading
Loading

Приклад 4

Loading
Loading