Реализуйте структуру данных "дек". Напишите программу, содержащую описание дека и моделирующую работу дека, реализовав все указанные здесь методы. Программа считывает последовательность команд и в зависимости от команды выполняет ту или иную операцию. После выполнения каждой команды программа должна вывести одну строчку. Возможные команды для программы:
ok
.ok
.ok
.bye
и завершить работу.Гарантируется, что количество элементов в деке в любой момент не превосходит 100. Все операции pop_front
, pop_back
, front
, back
всегда корректны.
Вводятся команды управления деком, по одной на строке.
Требуется вывести протокол работы дека, по одному сообщению на строке.
push_back 1 back exit
ok 1 bye
size push_back 1 size push_back 2 size push_front 3 size exit
0 ok 1 ok 2 ok 3 bye
Реализуйте структуру данных "дек". Напишите программу, содержащую описание дека и моделирующую работу дека, реализовав все указанные здесь методы. Программа считывает последовательность команд и в зависимости от команды выполняет ту или иную операцию. После выполнения каждой команды программа должна вывести одну строчку. Возможные команды для программы:
ok
.ok
.ok
.bye
и завершить работу.Гарантируется, что количество элементов в деке в любой момент не превосходит 100. Перед исполнением операций pop_front
, pop_back
, front
, back
программа должна проверять, содержится ли в деке хотя бы один элемент. Если во входных данных встречается операция pop_front
, pop_back
, front
, back
, и при этом дек пуст, то программа должна вместо числового значения вывести строку error
.
Вводятся команды управления деком, по одной на строке.
Требуется вывести протокол работы дека, по одному сообщению на строке
push_back 1 back exit
ok 1 bye
size push_back 1 size push_back 2 size push_front 3 size exit
0 ok 1 ok 2 ok 3 bye
Реализуйте структуру данных "дек". Напишите программу, содержащую описание дека и моделирующую работу дека, реализовав все указанные здесь методы. Программа считывает последовательность команд и в зависимости от команды выполняет ту или иную операцию. После выполнения каждой команды программа должна вывести одну строчку. Возможные команды для программы:
ok
.ok
.ok
.bye
и завершить работу.pop_front
, pop_back
, front
, back
программа должна проверять, содержится ли в деке хотя бы один элемент. Если во входных данных встречается операция pop_front
, pop_back
, front
, back
, и при этом дек пуст, то программа должна вместо числового значения вывести строку error.
Вводятся команды управления деком, по одной на строке.
Требуется вывести протокол работы дека, по одному сообщению на строке.
push_back 1 back exit
ok 1 bye
size push_back 1 size push_back 2 size push_front 3 size exit
0 ok 1 ok 2 ok 3 bye
Рассмотрим последовательность целых чисел длины N. По ней с шагом 1 двигается “окно” длины K, то есть сначала в “окне” видно первые K чисел, на следующем шаге в “окне” уже будут находиться K чисел, начиная со второго, и так далее до конца последовательности. Требуется для каждого положения “окна” определить минимум в нём.
В первой строке входных данных содержатся два числа N и K (1 ≤ N ≤ 150000, 1 ≤ K ≤ 10000, K ≤ N) – длины последовательности и “окна”, соответственно. На следующей строке находятся N чисел – сама последовательность.
Выходые данные должны содержать N − K + 1 строк – минимумы для каждого положения “окна”.
7 3 1 3 2 4 5 3 1
1 2 2 3 1
Дано N чисел. Для каждых K подряд идущих чисел найти минимальное среди них.
Формат входных данных
В первой строке даны числа N и K (1 ≤ N ≤ 150000, 1 ≤ K ≤ 10000, K ≤ N), разделенные пробелом. Во второй строке записано N целых чисел через пробел. Числа находятся в диапазоне от -32768 до 32767.
Формат выходных данных
Для каждых К подряд идущих чисел вывести минимальное из них.
Пример
Входные данные | Выходные данные |
11 3 8 764 1 3 85 2 4 5 77 1 5 | 1 1 1 2 2 2 4 1 1 |