Гра
Аліса та Боб грають у таку гру:
Їм надано послідовність з n додатних цілих чисел, кожне з яких не перевищує n. Елементи послідовності пронумеровані від 1 до n. У послідовності можуть бути повторювані числа. На початку гри формується множина s, що містить перші p елементів послідовності. Зверніть увагу, що s може бути мультимножиною, тобто вона може містити однакові елементи. Гравці ходять по черзі, починає Аліса. Кожен хід виконується так:
Гравець, чия черга, вибирає одне число з множини s і забирає його, додаючи його значення до свого рахунку (спочатку рахунок обох гравців дорівнює 0).
Наступне число в послідовності, якщо воно ще є, додається до множини s (якщо послідовність вже порожня, ця дія пропускається). Це означає, що після першого взяття з s, число з індексом p + 1 додається до множини, після другого - число з індексом p + 2, і так далі.
Гра триває, поки множина s не стане порожньою. Ми припускаємо, що кожен гравець намагається максимізувати свій рахунок. Результатом гри є різниця між очками, набраними Алісою, та очками, набраними Бобом.
Напишіть програму game, яка повинна обробити k ігор на заданій початковій послідовності.
Вхідні дані
Перший рядок містить два розділені пробілом додатні цілі числа N та K.
Другий рядок складається з N розділених пробілом додатних цілих чисел a1, a2, …., aN, що представляють елементи заданої послідовності.
Третій рядок містить K розділених пробілом додатних цілих чисел p1, p2, ..., pK, кожне з яких визначає початкову множину S, створену з перших pi елементів послідовності для i-ї гри, i = 1, 2, ..., K.
Вихідні дані
Програма повинна вивести у стандартний вихід K рядків, кожен з яких містить одне ціле число - результат відповідної гри. Рядок номер i повинен містити результат гри номер i (ігри пронумеровані від 1 до K за вхідними даними).
Обмеження
1 ≤ N ≤ 100 000
1 ≤ K ≤ 2 000
K ≤ N
1 ≤ a[i] ≤ N для i = 1, 2, …, N
1 ≤ p[i] ≤ N для i = 1, 2, …, K