Skip to content

Latest commit

 

History

History
45 lines (30 loc) · 4 KB

task_D.md

File metadata and controls

45 lines (30 loc) · 4 KB

D. Лавочки в атриуме

Ограничение времени 1 секунда
Ограничение памяти 64Mb
Ввод стандартный ввод или input.txt
Вывод стандартный вывод или output.txt

В атриуме нового корпуса ФНК урбанисты установили модные гранитные лавочки (на которых холодно сидеть зимой и жарко летом). Лавочка устроена следующим образом: несколько одинаковых кубических гранитных блоков ставятся в ряд, а на них кладется гранитная плита.

При этом блоки располагаются так, чтобы плита не падала: для этого достаточно, чтобы и слева, и справа от центра плиты был хотя бы один гранитный блок или его часть (в частности, если центр плиты приходится на середину какого-нибудь блока, то и слева, и справа от центра плиты находится часть блока, и плита не падает).

На ФНК много певокурсников (но это только пока не произошли отчисления за списывания на курсе ОиМП) и им не хватает стульев в аудиториях. Студенты обнаружили, что блоки можно использовать в аудитории в качестве сиденья. Можно по одному вытаскивать блоки, находящиеся с краю (как слева, так и справа). Они хотят вытащить из-под лавочки как можно больше блоков так, чтобы она при этом не упала (передвигать оставшиеся блоки нельзя). Определите, какие блоки они должны оставить.

Формат ввода

В первой строке входных данных содержатся два числа: L - длина лавочки и K - количество гранитных блоков-ножек. Оба числа натуральные и не превышают 10 000.

Во второй строке следуют K различных целых неотрицательных чисел, задающих положение каждой ножки. Положение ножки определяется расстоянием от левого края плиты до левого края ножки (ножка - это куб размером 1×1×1). Ножки перечислены слева направо (то есть начиная с ножки с меньшим расстоянием до левого края).

Формат вывода

Требуется перечислить ножки, которые студентам нужно оставить. Для каждой ножки нужно выдать ее положение, как оно задано во входных данных. Ножки следует перечислять слева направо, в том порядке, в котором они встречаются во входных данных.

Пример 1

Ввод Вывод
5 2 2
0 2

Пример 2

Ввод Вывод
13 4 4 8
1 4 8 11

Пример 3

Ввод Вывод
14 6 6 8
1 6 8 11 12 13