В настольной игре «Пираты» в течение игры идет накопление жетонов. В конце игры происходит подсчет очков. Из колоды вытягиваются m карточек-сундуков.
Сундуки открываются слева направо, начиная с первого, по следующим правилам:
Открытие сундуков может прекратиться в любой момент по решению игрока, тратить все жетоны не обязательно.
При открытии i-ого сундука к количеству очков прибавляется ai.
Посчитайте, какую максимальную ценность может получить игрок, который имеет n жетонов и данную раскладку сундуков.
Первая строка содержит целые числа n и m (1 ≤ n ≤ 1000, 1 ≤ m ≤ 100) — число жетонов и сундуков соответственно.
Вторая строка содержит m целых чисел ai ( - 106 ≤ ai ≤ 106) — число очков, которое даёт i-й сундук.
Выведите одно целое число — максимальное число очков, которое можно получить, если потратить жетоны оптимальным образом.
4 6
1 2 3 4 5 6
10
8 6
1 2 -3 -4 5 6
11
В последнем примере максимально возможную сумму можно собрать следующим образом: