Одномерные массивы


Плюсануть
Поделиться
Класснуть
Запинить


Условие задачи Прогресс
ID 7148. 7148
Темы: Одномерные массивы   

Дан массив. Определить количество максимальных элементов в массиве

В первой строке задается количество элементов массива (не более 100)
Во второй строке вводятся элементы массива

ID 1875. 1875
Темы: Одномерные массивы    Работа с элементами (вставка, удаление, сдвиг)   

Дан массив из N элементов (2<=N<=15). Удалить из него все элементы, оканчивающиеся на 0

Формат входных данных:
На входе подаются в первой строке N - число элементов массива
Вторая строка содержит N чисел - значения элементов массива

Формат выходных данных: Выведите результирующий массив в строку

Пример:
Ввод
5
43  -50  76  -84 100 

Вывод
43  76 -84

ID 10385. 10385
Темы: Одномерные массивы    Работа с элементами (вставка, удаление, сдвиг)   

Дан массив из N элементов.  Удалять элементы в начале и в конце до тех пор, пока сумма массива не будет кратна 5 (сначала первый, затем последний и т.д.).

В первой строке вводится число N (1<=N<=15)  - количество элементов одномерного массива
Во второй строке вводится N целых чисел (ввод чисел происходит с клавиатуры)

Пример входных и выходных данных

№ теста Входные данные Выходные данные
1 4
2 6 4 5
6 4

ID 10383. 10383
Темы: Одномерные массивы    Работа с элементами (вставка, удаление, сдвиг)   

Дан массив из N элементов.  Удалить из массива все элементы, которые меньше предыдущего. После операции удаления таких элементов, в массиве не должно быть ни одного элемента. который был бы меньше, чем стоящий слева от него.

Входные данные
В первой строке вводится число N (1<= <=15)  - количество элементов одномерного массива.
Во второй строке вводится N целых чисел. Числа в строке разделены одним пробелом. 

Выходные данные
Выведите измененный массив.

Примечание
Программа должна менять массив "на месте". То есть массив необходимо именно изменить, а не создавать новый массив или сразу выводить требуемые эллементы на экран!
 

Примеры
Входные данные Выходные данные
1
5
1 0 2 0 0
1 2
2 6
4 0 1 4 5 4
4 4 5

ID 10384. 10384
Темы: Одномерные массивы    Работа с элементами (вставка, удаление, сдвиг)   

Дан массив из N элементов.  Удалить неодинаковые симметричные элементы.

В первой строке вводится число N (1<=N<=15)  - количество элементов одномерного массива
Во второй строке вводится N целых чисел (ввод чисел происходит с клавиатуры)

Пример входных и выходных данных

№ теста Входные данные Выходные данные
1
5
1 0 2 0 0
0 2 0
2
6
4 0 1 4 5 4 
4 4

ID 10382. 10382
Темы: Одномерные массивы    Работа с элементами (вставка, удаление, сдвиг)   

Дан массив из N элементов.  Удалить самую длинную последовательность нулей
(одинаковой длины последовательностей нет).

В первой строке вводится число N (1<=N<=20)  - количество элементов одномерного массива
Во второй строке вводится N целых чисел (ввод чисел происходит с клавиатуры)

Пример входных и выходных данных

№ теста Входные данные Выходные данные
1
5
1 0 2 0 0
1 0 2
2
6
4 0 0 0 3 0 
4 3 0

ID 18716. Удаление элемента массива
Темы: Одномерные массивы    Работа с элементами (вставка, удаление, сдвиг)   

Дан массив. Требуется удалить из него элемент, стоящий на месте номер B, сдвинув все последующие элементы влево.
 
Входные данные
Во входном файле записано сначала число N - количество элементов массива (2<=N<=100), затем N чисел из диапазона Integer - элементы массива, а затем число B (1<=B<=N).
 
Выходные данные
В выходной файл выведите N-1 число - элементы массива с удаленным B-м элементом.
 
Примечание
Вы должны удалить элемент непосредственно из массива, а не сделать вид при выводе данных, что у вас такого элемента нет. Также вы не  должны для этого заводить в программе дополнительный массив.
 

ID 38692. На нечетной стороне
Темы: Одномерные массивы   

Известно число жителей, проживающих в каждом доме улицы. Нумерация домов идет подряд, начинается с 1. Дома с нечетными номерами расположены на одной стороне улицы, с четными на другой. Определите, сколько человек живет на нечетной стороне улицы.

Входные данные
В первой строке вводится число N (1<=N<=20)  - количество элементов одномерного массива. Во второй строке вводится N целых чисел (каждое число не более 1000).

Выходные данные
Выведите одно число - количество человек, которые живут на нечетной стороне улицы.
 

Примеры
Входные данные Выходные данные
1
6
202 103 454 287 282 238 
938

ID 7034. По разную сторону улицы
Темы: Одномерные массивы   

Известно число жителей, проживающих в каждом доме улицы. Нумерация домов идет подряд, начинается с 1. Дома с нечетными номерами расположены на одной стороне улицы, с четными на другой. На какой стороне улицы проживает больше жителей?

Входные данные
В первой строке вводится число N (1<=N<=20)  - количество элементов одномерного массива. Во второй строке вводится N целых чисел (каждое число не более 100).

Выходные данные
Вывести на экран знак больше (">"), если количество жителей на нечетной стороне проживает больше, чем на четной. Вывести на экран знак меньше ("<"), если количество жителей на нечетной стороне проживает меньше, чем на четной. В противном случае вывести знак равно ("=").
 

Примеры
Входные данные Выходные данные
1
6
202 103 484 287 282 238 
>
2 4
20 101 100 123
<

ID 7031. Сумма кратных а
Темы: Одномерные массивы   

Входные данные
В первой строке вводится число N (1<=N<=20) - количество элементов одномерного массива. Во второй строке вводится N целых чисел (все числа по модулю не больше 100). В третьей строке вводится целое число a.

Выходные данные
Вывести одно число - сумму элементов, кратных заданному числу a.
 

Примеры
Входные данные Выходные данные
1 5
2 4 1 3 6
2
12
2 3
1 3 5
3
3

ID 38693. Количество положительных
Темы: Одномерные массивы   

Входные данные
В первой строке вводится число N (1<=N<=20)  - количество элементов одномерного массива. Во второй строке вводится N целых, не равных нулю чисел (все числа по модулю не более 100).

Выходные данные
Выведите одно число - количество положительных элементов.
 

Примеры
Входные данные Выходные данные
1 5
1 -5 -3 -4 5
2

ID 38691. На четной стороне
Темы: Одномерные массивы   

Известно число жителей, проживающих в каждом доме улицы. Нумерация домов идет подряд, начинается с 1. Дома с нечетными номерами расположены на одной стороне улицы, с четными на другой. Определите, сколько человек живет на четной стороне улицы.

Входные данные
В первой строке вводится число N (1<=N<=20)  - количество элементов одномерного массива. Во второй строке вводится N целых чисел (каждое число не более 1000).

Выходные данные
Выведите одно число - количество человек, которые живут на четной стороне улицы.
 

Примеры
Входные данные Выходные данные
1
6
202 103 484 287 282 238 
628

ID 7029. Сумма больших а
Темы: Одномерные массивы   

Входные данные
В первой строке вводится число N (1<=N<=20)  - количество элементов одномерного массива. Во второй строке вводится N целых чисел (все числа по модулю не более 100). В третьей строке вводится целое число a.

Выходные данные
Выведите одно число - сумму элементов массива, которые больше числа a.
 

Примеры
Входные данные Выходные данные
1 5
1 2 3 4 5
0
15
2 3
-1 0 1
-2
0

ID 7035. Элементы, оканчивающиеся на a
Темы: Одномерные массивы   

Входные данные
В первой строке вводится число N (1<=N<=20)  - количество элементов одномерного массива. Во второй строке вводится N целых чисел (ввод чисел происходит с клавиатуры).
В третьей строке вводится цифра a

Выходные данные
Выведите одно число - количество элементов массива, оканчивающихся на цифру a.
 

Примеры
Входные данные Выходные данные
1 5
1 2 32 14 52
2
3
2 3
-1 0 1
2
0

ID 38694. Количество отрицательных
Темы: Одномерные массивы   

Входные данные
В первой строке вводится число N (1<=N<=20)  - количество элементов одномерного массива. Во второй строке вводится N целых чисел (все числа по модулю не более 100).

Выходные данные
Выведите одно число - количество отрицательных элементов.
 

Примеры
Входные данные Выходные данные
1 5
1 -5 -3 -4 5
3

ID 7030. Сумма четных элементов
Темы: Одномерные массивы   

Входные данные
В первой строке вводится число N (1<=N<=20) - количество элементов одномерного массива. Во второй строке вводится N целых чисел (все числа не более 100 по модулю).

Выходные данные
Выведите одно число - сумму четных элементов.
 

Примеры
Входные данные Выходные данные
1 5
2 4 1 3 6
12
2 3
1 3 5
0

ID 7033. Отличные от последнего
Темы: Одномерные массивы   

Входные данные
В первой строке вводится число N (1<=N<=20)  - количество элементов одномерного массива. Во второй строке вводится N целых чисел (все числа не более 100).

Выходные данные
Выведите одно число - количество элементов отличных от последнего элемента.
 

Примеры
Входные данные Выходные данные
1 5
1 5 3 4 5
3
2 3
1 1 1
0

ID 43566. Количество равных последнему
Темы: Одномерные массивы   

Входные данные
В первой строке вводится число N (1<=N<=20)  - количество элементов одномерного массива. Во второй строке вводится N целых чисел (все числа по модулю не более 100).

Выходные данные
Выведите одно число - количество элементов исходного массива, равных последнему элементу (последний элемент в подсчете не учитывается).
 

Примеры
Входные данные Выходные данные
1 5
1 5 5 -4 5
2

ID 47239. Кто отработал норму?
Темы: Одномерные массивы   

В компании работает n сотрудников, пронумерованных от 0 до n-1. I-й сотрудник (сотрудник с номером i)  отработал hoursi часов в компании. Назовем нормой определенное количество часов, установленное компанией, в рамках которой сотрудники должны выполнять свои обязанности. Руководство компании установила норму на уровне не менее t часов. 

Определите количество сотрудников, которые отработали норму.


Входные данные
Программа получает на вход в первой строке натуральное число n - количество сотрудников в компании. Вторая строка содержит n чисел hoursi - количество часов, отработанных i-м сотрудником. Третья строка содержит число t.
 

Ограничения

  • 1 <= n <= 50
  • 0 <= i <= n-1
  • 0 <= hoursi, t <= 105


Выходные данные
Выведите ответ на задачу.
 
 
Примеры
Входные данные Выходные данные
1
5
0 1 2 3 4
2
3
2
5
5 1 4 2 2
6
0

ID 7142. Самая толстая книга
Темы: Одномерные массивы   

В массиве хранится информация о количестве страниц в каждой из 100 книг. Все страницы имеют одинаковую толщину. Определить количество страниц в самой толстой книге.

Входные данные
На вход подается строка, содержащая 100 натуральных чисел, разделенных пробелом. Каждое число не больше 500.

Выходные данные
Выведите на ответ на задачу.

ID 7145. Последний в гонках
Темы: Одномерные массивы   

В массиве хранится информация о результатах 25 спортсменов (секунды), участвовавших в лыжной гонке. Определить результат спортсмена пришедшего последним к финишу.

Входные данные
На вход подается строка, содержащая 25 натуральных чисел, разделенных пробелом. Каждое число не больше 250.

Выходные данные
Выведите на ответ на задачу.

ID 7143. Самый дорогой автомобиль
Темы: Одномерные массивы   

В массиве хранится информация о стоимости  каждой из 50 марок легковых автомобилей. Определить, сколько  стоит самый дорогой автомобиль.

Входные данные
На вход подается строка, содержащая 50 натуральных чисел, разделенных пробелом. Каждое число не больше 100000.

Выходные данные
Выведите на ответ на задачу.

ID 7144. Дешевые конфеты
Темы: Одномерные массивы   

В массиве хранится информация о стоимости 1 килограмма 20 видов конфет. Определить, сколько стоят самые дешевые конфеты.

Входные данные
На вход подается строка, содержащая 20 натуральных чисел, разделенных пробелом. Каждое число не больше 250.

Выходные данные
Выведите на ответ на задачу.

ID 6004. Заполнение массива
Темы: Одномерные массивы   

В первой строке дано неотрицательное число N- количество элементов массива (N<=100)
Во второй строке даны два числа: число А - значение первого элемента массива, число p - разница между следующим и предыдущим элементом массива (арифметическая прогрессия)
Заполнить массив элементами данной прогрессии и вывести его на экран

Пример входных и выходных данных

№ теста Входные данные Выходные данные
1 5
7 3
7 10 13 16 19 

ID 6005. Заполнение массива - 3
Темы: Одномерные массивы   

В первой строке дано неотрицательное число N- количество элементов массива (1<=N<=100)
Во второй строке даны два числа: число А - значение первого элемента массива, число p - частное от деления текущего элемента массива на следующий (геометрическая прогрессия) - p>0
Элементы массива дробные числа
Заполнить массив элементами данной прогрессии и вывести его на экран (все элементы выводятся на экран с точносью до 6 знаков после запятой)

ОБРАТИТЕ ВНИМАНИЕ: В задаче должен использоваться именно массив, а не просто вывод чисел на экран. Задача будет проверена вручную, после автоматической проверки!

Пример входных и выходных данных

№ теста Входные данные Выходные данные
1 5
7 3
7.000000 2.333333 0.777778 0.259259 0.086420 
 

ID 6012. Заполнение массива - 2
Темы: Одномерные массивы   

В первой строке дано неотрицательное число N- количество элементов массива (N<=100). 
Во второй строке дано число b

Заполнить массив элементами равными частному от деления индекса элемента массива на число b. Элементы массива дробные числа


Пример входных и выходных данных
№ теста Входные данные Выходные данные
1 5
3
0.000000 0.333333 0.666667 1.000000 1.333333 

ID 6000. 6000
Темы: Одномерные массивы   

Дано неотрицательное число N- количество элементов массива (N<=100)

Заполнить массив элементами по следующему правилу и вывести его на экран в одну строчку через пробел:

1 4 9 16 25 ...
 

Пример входных и выходных данных
№ теста Входные данные Выходные данные
1 5 1 4 9 16 25

ID 6001. 6001
Темы: Одномерные массивы   

Дано неотрицательное число N- количество элементов массива (N<=100)

Заполнить массив элементами по следующему правилу (первый элемент равен значению N) и вывести его на экран в одну строчку через пробел:

20   17  14   11  ... 

Пример входных и выходных данных
№ теста Входные данные Выходные данные
1 5 5 2 -1 -4 -7 

ID 5998. 5998
Темы: Одномерные массивы   

Дано неотрицательное число N- количество элементов массива (N<=100)

Заполнить массив элементами по следующему правилу и вывести его на экран в одну строчку через пробел:

2 4 6 8 10 ...
 

Пример входных и выходных данных
Входные данные Выходные данные
1 5 2 4 6 8 10

ID 5999. 5999
Темы: Одномерные массивы   

Дано неотрицательное число N- количество элементов массива (N<=100)

Заполнить массив элементами по следующему правилу и вывести его на экран в одну строчку через пробел:

1 3 5 7 9 ...
 

Пример входных и выходных данных
№ теста Входные данные Выходные данные
1 5 1 3 5 7 9

ID 6002. 6002
Темы: Одномерные массивы   

Дано неотрицательное число N- количество элементов массива (N<=100)

Заполнить массив элементами по следующему правилу (первый элемент равен значению N) и вывести его на экран в одну строчку через пробел:

20   19  17   14  ... 

Пример входных и выходных данных
№ теста Входные данные Выходные данные
1 5 5 4 2 -1 -5 

ID 6009. 6009
Темы: Одномерные массивы   

Дано неотрицательное число N (0<N<=999999)

Заполнить массив его цифрами, расположенными в обратном порядке (первый элемент равен последней цифре, второй - предпоследней и т.д.). 

Пример входных и выходных данных

№ теста Входные данные Выходные данные
1 15423 3 2 4 5 1 

ID 6006. 6006
Темы: Одномерные массивы   

Дано неотрицательное число N- количество элементов массива (N<=100)

Заполнить массив из N элементов первыми натуральными пятизначными числами, сумма цифр которых есть двузначное число

Пример входных и выходных данных

№ теста Входные данные Выходные данные
1 5 10009 10018 10019 10027 10028 

ID 6007. 6007
Темы: Одномерные массивы   

Дано неотрицательное число N- количество элементов массива (N<=100)

Заполнить массив первыми натуральными четырехзначными числами, у которых сумма четных цифр больше суммы нечетных

Пример входных и выходных данных

№ теста Входные данные Выходные данные
1 5 1002 1004 1006 1008 1014 

ID 6010. 6010
Темы: Одномерные массивы   

Дано неотрицательное число N (0<N<=100000)

Заполнить массив всеми делителями числа N в прямом порядке.

Пример входных и выходных данных

№ теста Входные данные Выходные данные
1 8 1 2 4 8

ID 6008. 6008
Темы: Одномерные массивы   

Дано неотрицательное число N- количество элементов массива (N<=100)

Заполнить массив первыми натуральными числами больше 300, делящимися нацело на 13 или на 17 и с суммой цифр большей 10;

Пример входных и выходных данных

№ теста Входные данные Выходные данные
1 5 338 357 364 374 377 

ID 7154. 7154
Темы: Одномерные массивы   

В массиве хранится информация о среднедневной температуре за каждый день июля. Определить даты двух самых теплых дней. Вывести эти даты в порядке возрастания. Если максимальная температура одинакова в течении 2 и более дней, то вывести даты встретившиеся ранее. 

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

Выходные данные
Выведите 2 числа - даты двух самых теплых дней. Если максимальная температура одинакова в течении 2 и более дней, то вывести даты встретившиеся ранее. 

ID 7152. 7152
Темы: Одномерные массивы   

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

Входные данные
Входная строка содержит 40 чиел, разделенных пробелом - максимальная скорость каждого автомобиля.

Выходные данные
Выведите 2 числа в порядке убывания - скорости двух самых быстрых автомобилей.

ID 7153. 7153
Темы: Одномерные массивы   

В массиве хранится информация о результатах 22 спортсменов, участвовавших в соревнованиях по бегу на 100 м. Известно, что никакие два спортсмена не финишировали одновременно Определить результаты двух спортсменов, занявших первое и второе места (ответ выводить в строку). 

Входные данные
Входная строка содержит 22 числа, разделенных пробелом - результаты спортсменов

Выходные данные
Выведите 2 числа - результаты двух спортсменов, занявших первое и второе места. Сначала результат первого, затем, через пробел, результат второго

ID 38210. Будильники
Темы: Условный оператор    Одномерные массивы    Дата и время    Перебор   

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

По информации о будильниках и текущему времени и дню недели определите, когда прозвонит очередной будильник.

Входные данные
В первой строке вводятся три числа, задающие текущее время: день недели (от 1 до 7), часы и минуты.

Во второй строке вводится одно натуральное число N, не превосходящее 100 – количество будильников.

В следующих N строках вводятся описания N будильников. Описание каждого будильника состоит из трех чисел: дня недели (число от 1 до 7 для понедельника,  …, воскресенья, соответственно, 0 – если будильник должен звонить каждый день), часов (от 0 до 23), минут (от 0 до 59).


Выходные данные
Выведите  через пробел три числа, задающие день недели, часы и минуты, когда прозвонит ближайший будильник.
 

Примеры
Входные данные Выходные данные Пояснение
1 2 10 20
2
1 23 15
0 10 10
3 10 10  
2 7 1 1
3
7 0 59
7 23 59
7 1 1
7 1 1 Во втором примере третий будильник будет звенеть в начальный момент времени.

ID 38221. Прыжки с трамплина
Темы: Одномерные массивы    Условный оператор   

На соревнованиях по прыжкам на лыжах с трамплина техника прыжка оценивается пятью судьями. Каждый судья ставит оценку от 1 до 20, после чего одна наименьшая и одна наибольшая оценки отбрасываются. Вам нужно написать программу, которая будет демонстрировать результаты прыжка для телетрансляции.

Она должна выводить пять оценок, которые поставили судьи, не меняя их порядка, а затем их сумму, и при этом брать в скобки те оценки, которые не учитываются при расчете суммы

Входные данные
На вход подается 5 натуральных чисел от 1 до 20, разделенных пробелом.

Выходные данные
Выведите те же числа в том же порядке, взяв в скобки минимальное (а если их несколько – самое левое из них) и максимальное (а если их несколько – самое правое из них) число, а также сумму всех чисел, не взятых в скобки. Все числа (включая сумму) должны быть напечатаны в одной строке и разделены одним пробелом (внутри скобок пробелов быть не должно). Перед суммой должен стоять знак равенства, отделенный слева и справа одним пробелом. Порядок оценок должен быть такой же, как и во входных данных.

Примеры
Входные данные Выходные данные
1 1 2 3 4 5 (1) 2 3 4 (5) = 9
2 10 11 10 11 10 (10) 11 10 (11) 10 = 31

ID 38223. Золотые слитки
Темы: Целые числа    Одномерные массивы   

Дано N золотых слитков. Требуется распилить не более одного из них на две части (не обязательно равные, но с целой массой), после чего разделить слитки на две кучи равной массы.

Входные данные
В первой строке вводится одно натуральное число N, не превосходящее 100.

Во второй строке через пробел вводятся N натуральных чисел, не превосходящих 100 - массы имеющихся слитков.

Выходные данные
Выведите массы слитков, которые вошли в первую кучку (включая массу части распиленного слитка).

Если решений несколько, выведите любое из них.

Если решений нет, выведите фразу NO SOLUTION (заглавными буквами).

Выводить массы можно в произвольном порядке, но масса части распиленного слитка (если таковой имеется) должна быть последней.

Примеры
Входные данные Выходные данные
1 3
5 5 5
NO SOLUTION
2 4
1 2 3 8
1 2 3 1

ID 38242. Билеты на Сапсан
Темы: Одномерные массивы   

Саша и Лиза — две самые обычные девочки, которые живут в Москве и очень любят Санкт-Петербург. На каникулы они запланировали обширную экскурсионную программу в северной столице, осталось только купить билеты. Девочки знают, что быстрее всего добраться до Санкт-Петербурга можно на скоростном поезде «Сапсан». В каждом вагоне есть N рядов, в каждом из которых по 4 места, которые нумеруются так:

Саша и Лиза выбрали вагон, в котором они планируют ехать. Оказалось, что в этом вагоне уже продано M билетов и известно, какие места уже заняты. Девочки решили купить билеты таким образом:

  • если есть два места рядом, то они покупают их (например, 1 и 2 или 3 и 4)
  • если двух мест рядом нет, то они пытаются купить места рядом через проход (например, 2 и 4)
  • если нет и таких мест, то они покупают любые два свободных места.
Помогите Саше и Лизе определить, какие места им стоит купить. Гарантируется, что в выбранном вагоне есть как минимум два свободных места.

Входные данные
В первой строке входных данных содержатся числа N — количество рядов в вагоне (1 ≤ N ≤ 105) и M — количество проданных билетов (1 ≤ M ≤ 4N - 2). В следующей строке записаны M различных чисел — номера мест, на которые билеты уже проданы.

Выходные данные
Выведите два числа — номера мест, билеты на которые стоит купить девочкам. Если возможны несколько вариантов ответа, выведите любой из них.
Примеры
Входные данные Выходные данные
1 2 3
3 7 8
5 6
2 2 5
1 4 5 2 7
6 8
3 2 5
2 7 4 5 6
1 3

ID 38251. Метро
Темы: Одномерные массивы    Условный оператор   

Ваня не очень-то любит людей, но, к сожалению, ему иногда все-таки приходится ездить на метро. В таких случаях ему помогают две вещи: наушники с любимыми «Scoprions» и правильно выбранное место. Поскольку Ваня хочет быть как можно дальше от всех людей, правильным местом считается такое место, расстояние от которого до ближайшего из соседей будет максимально возможным в вагоне. В вагоне N мест и они все расположены вдоль одной стены, причем вход в вагон находится у места с номером 1. Места идут подряд, без пропусков. Ваня понимает, что иногда правильных мест может быть несколько, и хочет сесть на ближайшее ко входу правильное место (то есть правильное место с минимальным номером).

Угадайте, какое место в вагоне займет Ваня.

Входные данные
В первой строке записано число N (1 ≤ N ≤ 105). В следующей строке через пробел записаны N чисел — 0 или 1. Число 0 обозначает свободное место, 1 — занятое; места нумеруются слева направо. Гарантируется, что хотя бы одно место свободно.

Выходные данные
Выведите номер места, на которое Ваня сядет.

Примеры
Входные данные Выходные данные
1 8
1 0 1 0 0 1 0 1
2
2 7
0 1 0 0 0 1 0
4
3 4
0 0 0 1
1

ID 38254. Пробка
Темы: Одномерные массивы    Условный оператор   

В один из летних дней Аркадий со своими родителями отправился в автомобильное путешествие. Он очень надеялся, что за городом им удастся избежать ненавистных пробок. Но, увы, уже через час они попали в затор. Аркадий загрустил и задумался о том, с какой скоростью они могли бы ехать, если бы не было пробки... Участок дороги, на котором они сейчас находятся, — однополосный. А это значит, что обгонять едущие впереди машины не представляется возможным. Т. е. какой бы мощной машина ни была, она все равно не сможет ехать быстрее, чем машина впереди неё. Аркадий хорошо разбирается в машинах и поэтому знает максимальные скорости тех машин, которые едут впереди. Теперь он хочет понять, с какой максимальной скоростью могла бы ехать каждая машина на данном участке.

Входные данные
В первой строчке дано число N (1 ≤ N ≤ 200) — количество машин в пробке. В следующих N строчках записано по одному целому числу в каждой, причем в i-й строчке записана скорость i-й машины. Скорость каждой из машин не превышает 300. Считается, что (i + 1)-я машина едет за i-й, а первая машина может ехать со своей максимальной скоростью.

Выходные данные
Выведите N чисел — скорости машин, с которыми они могли бы ехать на данном участке.

Примеры
Входные данные Выходные данные
1 2
80
100
80 80

ID 38330. Дома и магазины
Темы: Одномерные массивы    Циклы   

На Новом проспекте построили подряд 10 зданий. Каждое здание может быть либо жилым домом, либо магазином, либо офисным зданием.

Но оказалось, что жителям некоторых домов на Новом проспекте слишком далеко приходится идти до ближайшего магазина. Для разработки плана развития общественного транспорта на Новом проспекте мэр города попросил вас выяснить, какое же наибольшее расстояние приходится преодолевать жителям Нового проспекта, чтобы дойти от своего дома до ближайшего магазина.

Входные данные
Программа получает на вход десять чисел, разделенных пробелами. Каждое число задает тип здания на Новом проспекте: число 1 обозначает жилой дом, число 2 обозначает магазин, число 0 обозначает офисное здание. Гарантируется, что на Новом проспекте есть хотя бы один жилой дом и хотя бы один магазин.

Выходные данные
Выведите одно целое число: наибольшее расстояние от дома до ближайшего к нему магазина. Расстояние между двумя соседними домами считается равным 1 (то есть если два дома стоят рядом, то между ними расстояние 1, если между двумя домами есть еще один дом, то расстояние между ними равно 2 и т.д.)

Примеры
Входные данные Выходные данные Пояснение
1 2 0 1 1 0 1 0 2 1 2 3 В примере из условия дальше всего идти до ближайшего магазина жителям четвертого дома: ближайший к их дому магазин находится в первом доме, и им нужно пройти три дома до него. Жителям других домов придется пройти меньшее расстояние до ближайшего магазина, поэтому ответ 3.

ID 38339. Блины
Темы: Цикл while    Одномерные массивы    Циклы   

Мы все знаем, что начавшаяся зима скоро закончится, и на праздновании Масленицы все будут есть блины. Об этом и будет наша задача.

N гостей сидят за столом, и перед каждым стоит тарелка с блинами. На тарелке i-го гостя лежит ai блинов. Каждый гость съедает один блин за одну минуту, таким образом, время, когда закончит есть блины последний человек, равно наибольшему значению из ai.

Неожиданно к ним присоединился ещё один человек, и теперь все присутствующие могут переложить часть своих блинов (в том числе могут переложить все свои блины, а могут не перекладывать ни одного блина) вновь пришедшему человеку. Перекладывание блинов происходит одновременно и моментально.

Гости хотят переложить блины таким образом, чтобы после перекладывания они съели все блины за минимальное время (которое равно наибольшему числу блинов на тарелках у гостей, включая нового гостя). Определите, за какое наименьшее время гости смогут съесть свои блины после перекладывания.

Программа получает на вход натуральное число N, не превосходящее 100.000, – первоначальное количество гостей. Следующие N строк содержат натуральные числа ai – количество блинов на тарелке i-го человека. Значения ai даны в порядке неубывания, то есть ai ≤ ai+1. Сумма значений всех ai не превосходит 2·109.

Программа должна вывести одно целое число – минимальное время, за которое все гости закончат есть свои блины после перекладывания части блинов на тарелку нового гостя.

Примеры
Входные данные Выходные данные Пояснение
1 4
1
3
5
6
4 За столом сидят 4 человека, у них на тарелках 1, 3, 5, 6 блинов. Новому гостю последний гость отдаст 2 блина, а предпоследний – 1 блин, и тогда у всех, включая нового гостя, будет не более 4 блинов.

ID 38363. Ка-штаны
Темы: Одномерные массивы   

Как известно, обычно штаны состоят из двух штанин. Однако собачке нужны, например, уже штаны из 5 штанин (для 4-х лап и хвоста), а сороконожке – штаны с 40 штанинами.

У Пети живет Зверь, у которого M лап. Иногда – когда на улице особенно холодно, чтобы Зверь не простудился, на него бывает нужно надеть несколько штанов, чтобы на каждой лапе было надето по несколько штанин.

Петина мама оставила Пете N штанов, имеющих соответственно K1, K2, …, KN штанин, наказав ему надеть на Зверя их все. Петя хочет надеть на Зверя штаны так, чтобы на самой «утепленной» лапе оказалось как можно меньше штанин, но при этом все оставленные мамой штаны были надеты на зверя. Любые штаны можно надевать на любой набор лап (каждая лапа встречается в наборе не более одного раза).

Помогите ему – напишите программу, которая для каждых штанов укажет, на какие лапы должны быть надеты их штанины. Имейте в виду, что две штанины одних и тех же штанов не могут быть надеты на одну и ту же лапу (в то время как штанины разных штанов могут быть надеты на одну и ту же лапу).

Входные данные
Вводится сначала число M, а затем число N (1 ≤ M ≤ 100, 1 ≤ N ≤ 100). Далее вводятся N чисел Ki, обозначающих число штанин у оставленных мамой штанов (1 ≤ Ki ≤ M).

Выходные данные
Выведите N строк, в i-ой строке должно быть выведено Ki различных чисел, обозначающих номера лап Зверя, на которые должны быть надеты штанины i-ых штанов. Лапы Зверя нумеруются натуральными числами от 1 до M. Если искомых ответов несколько, то выведите любой из них.

Примеры
Входные данные Выходные данные Пояснение
1 4 3
1 2 3
1
1 2
2 3 4
Первые штаны надеты на лапу 1;
вторые штаны надеты на лапы 1 и 2;
третьи штаны надеты на лапы 2, 3 и 4.
Таким образом, на самых «утепленных» лапах (а это лапы 1 и 2) надето по 2 штанины.
2 4 2
3 2
1 2 3
4 1
Первые штаны надеты на лапы 1, 2 и 3;
вторые штаны надеты на лапы 1 и 4.
Таким образом, количество штанов на самой «утепленной» лапе (это лапа номер 1) – 2.

ID 38364. Черепахи
Темы: Одномерные массивы    Множества   

Широко известна следующая задача для младших школьников. Три черепахи ползут по дороге. Одна черепаха говорит: “Впереди меня две черепахи”. Другая черепаха говорит: “Позади меня две черепахи”. Третья черепаха говорит: “Впереди меня две черепахи и позади меня две черепахи”. Как такое может быть? Ответ: третья черепаха врет!

По дороге одна за другой движутся N черепах. Каждая черепаха говорит фразу вида: “Впереди меня ai черепах, а позади меня bi черепах”. Ваша задача определить самое большое количество черепах, которые могут говорить правду.

Входные данные
В первой строке вводится целое число N (1 ≤ N ≤ 10000) . Далее следуют N строк, содержащих целые числа ai и bi, по модулю не превосходящие 10000, описывающие высказывание i-ой черепахи.

Данные о высказываниях черепах приведены в произвольном порядке, то есть первое высказывание не обязательно соответствует черепахе, идущей во главе колонны, второе - не обязательно следующей за ней и так далее

Выходные данные
Выведите целое число M – максимальное количество черепах, которые могут говорить правду.
 

Примеры
Входные данные Выходные данные
1 3
2 0
0 2
2 2
2

ID 38505. Конфеты и коробки
Темы: Цикл for    Одномерные массивы    Перебор   

В ряд расположены N ящиков. Изначально в i-м ящике слева находится ai конфет.  Громозека выбирает ящик, содержащий хотя бы одну конфету, и съедает одну из конфет в выбранном ящике.Он может выполнять это действие любое количество раз. Его цель добиться того, чтобы в любых двух соседних коробках содержалось не более x конфет.
Найдите минимальное количество операций, необходимых для достижения цели Громозеки.

Входные данные
В первом строке задается два числа N (\(2<=N<=10^5\)) и (\(0<=x<=10^9\)).  Во второй строке содержится N целых чисел a(\(0<=a_i<=10^9\)).

Выходные данные
Выведите ответ на задачу.

 

Примеры
Входные данные Выходные данные Пояснения
1 3 3
2 2 2
1 Необходимо съесть одну конфету во второй коробке. Тогда количество конфет в каждой коробке станет (2,1,2).
2 6 1
1 6 1 2 0 4
11 Например, можно съесть шесть конфет во второй коробке, две в четвертой и три в шестой. Тогда количество конфет в каждой коробке станет (1,0,1,0,0,1).
3 5 9
3 1 4 1 5
0 Цель уже достигнута
4 2 0
5 5
10 Все конфеты должны быть съедены.

 

ID 38582. Набор с максимальной средней суммой
Темы: Одномерные массивы   

Дан набор из N элементов. Значение i-го элемента (\(1<=i<=N\)) равно vi. Из данного набора выбирается не менее A и не более B элементов. Найти максимально возможное среднее арифметическое значений выбранных элементов. Кроме того, найти количество способов выбора элементов, чтобы среднее значение выбранных элементов было максимальным.

Входные данные
В первой строке задается три целых числа через пробел: N (\(1<=N<=50\)), A и B (\(1<=A,B<=N\)). В следующих N строках записаны целые числа vi (\(1<=v_i<=10^{15}\)), по одному числу в строке.

Выходные данные
Выведите две строки.
Первая строка должна содержать максимально возможное среднее арифметическое значений выбранных элементов. Вывод следует считать правильным, если абсолютная или относительная погрешность не превышает \(10^{-6}\)
Вторая строка должна содержать количество способов выбора элементов, чтобы среднее значение выбранных элементов было максимальным.
 

 

Примеры
Входные данные Выходные данные Пояснения
1 5 2 2
1 2 3 4 5
4.500000
1
Среднее значение выбранных элементов будет максимальным при выборе четвертого и пятого элементов. Следовательно, первая строка вывода должна содержать 4.5.
Нет другого способа выбрать элементы, чтобы среднее значение было 4,5, и поэтому вторая строка вывода должна содержать 1.
2 4 2 3
10 20 10 10
15.000000
3
Может быть несколько способов выбора элементов, чтобы среднее значение было максимальным.
3 5 1 5
1000000000000000 999999999999999 999999999999998 999999999999997 999999999999996
1000000000000000.000000
1
 

 

ID 38262. Водопады
Темы: Одномерные массивы    Условный оператор   

Недавно дядя Фёдор прочитал в журнале «Мурзилка», что самый высокий водопад в мире — это водопад Анхель, высота которого составляет 1054 метра. «Вот было бы здорово посмотреть на такой водопад!», — размечтался он.

Но Венесуэла далеко, поэтому пока дядя Фёдор решил начать с исследования речки Сметанки, которая течет рядом с Простоквашино. Она начинается в холмах и постепенно спускается вниз, к деревне. Дядя Фёдор вместе с Шариком прошли вдоль всего течения Сметанки от ее истока. Иногда по пути им встречались водопады. Как дядя Фёдор узнал из той статьи в «Мурзилке», водопадом считается участок реки с постоянным углом наклона, превышающим 45 градусов, то есть такой участок, высота которого больше его длины.

Уже после путешествия, раз за разом перерисовывая карту Сметанки на бумагу, дядя Фёдор заметил, что если нарисовать вид Сметанки сбоку (то есть чем выше нарисована точка — тем выше она над уровнем моря, а чем правее — тем дальше она от истока и ближе к Простоквашино), то получается невозрастающая ломаная, которую очень легко анализировать. Каждый отрезок этой ломаной — это как раз участок реки с постоянным углом наклона, который может оказаться водопадом!

Проведя несколько вечеров за изучением карты Сметанки, дядя Фёдор вспомнил, что кроме водопадов бывают еще и каскады водопадов. Каскадом водопадов называется один или несколько идущих подряд водопадов. Высота каскада — это разница между высотами самой верхней и самой нижней точек, принадлежащих этому каскаду.

Теперь дяде Фёдору стало интересно, а какова высота самого высокого каскада водопадов на Сметанке? Помогите ему: по описанию реки, сделанному Шариком и дядей Фёдором, найдите это число.

Входные данные
В первой строке вводится число n (2<=n<=105 ) — количество вершин ломаной, описывающей речку Сметанку. В следующих n строках перечислены координаты этих точек, в i-й строчке записаны числа xi и yi — расстояние от точки до истока по горизонтали и высота точки над уровнем моря (0xi<=109, yi<=109 ). Точки перечислены начиная от истока реки, то есть начиная с точки, x-координата которой равна нулю, а y-координата — максимальная среди всех точек. Гарантируется, что река течет сверху вниз и слева направо, то есть каждая следующая точка находится не выше и не левее предыдущей.

Выходные данные
Выведите одно целое число: высоту самого высокого каскада водопадов на этой реке. Если на реке на самом деле нет водопадов, выведите 0.

Примеры
Входные данные Выходные данные
1 3
0 15
1 10
5 5
10

ID 38277. Мама, я диспетчер!
Темы: Одномерные массивы   

Максим вырос, разочаровался в большой науке и теперь работает авиадиспетчером. Каждый день он делает очень важное и ответственное дело: сажает самолеты.

Этот процесс не такой уж сложный, как может показаться на первый взгляд. В аэропорту, в котором работает Максим, всего одна посадочная полоса, поэтому самолеты должны садиться по очереди. Посадка занимает b минут. Если самолет прилетел, а посадочная полоса занята, его отправляют совершать дополнительные круги над городом до тех пор, пока он не прилетит к аэропорту со свободной взлётно-посадочной полосой. Один круг занимает f минут. Если посадочная полоса свободна, самолёт немедленно начинает посадку. Если несколько самолётов подлетают к аэропорту со свободной посадочной полосой одновременно, то один из них идёт на посадку, а другие отправляются совершать дополнительные круги.

Сегодня в аэропорт должны прилететь n самолетов, известно время прилета каждого из них. За какое время все самолёты совершат посадку?

Входные данные
В первой строке даны три целых числа n, b, f — количество самолетов (1≤n≤1000), время, которое занимает посадка и время, которое занимает один круг над аэропортом (1≤b, f≤109  ). В следующей строке дано n целых чисел ti — времена прибытия самолетов, перечисленные в произвольном порядке (0≤ti≤109 ).

Выходные данные
Выведите одно число: время, за которое все самолёты совершат посадку.
 

Примеры
Входные данные Выходные данные
1 10 5 12
13 0 1 10 20 20 2 1 10 20
79

ID 38289. Подборка новостей
Темы: Одномерные массивы   

Игорь читает новостную ленту в своей любимой социальной сети, состоящую из n последовательно расположенных записей. Каждая запись в ленте имеет свою характеристику — позитивность ai , заданную натуральным числом. После прочтения i -й записи настроение Игоря улучшается на ai .

Игорь читает записи в том порядке, в котором они показаны, не пропуская никакие из них. Приложение социальной сети устроено так, что после просмотра последней записи Игорь перемещается в начало ленты и видит первую запись. Игорь может начать просмотр новостной ленты с любой из записей и прочитать подряд любое количество записей, не превосходящее n .

Игорь чувствует себя счастливым, если его настроение после прочтения новостей улучшилось хотя бы на p . Он хочет почувствовать себя счастливым, прочитав как можно меньше записей, ведь он уже опаздывает на олимпиаду! Помогите ему выбрать запись, с которой следует начать просмотр, и количество записей, которые нужно просмотреть, или определите, что записей в ленте недостаточно, чтобы стать счастливым.

Входные данные
Первая строка содержит два числа n и p ( 1 ≤ n ≤ 1000 , 1 ≤ p ≤ 107 ) — количество записей в новостной ленте и величину, на которую Игорь хочет увеличить своё настроение.

Вторая строка содержит n целых неотрицательных чисел a i ( 1 ≤ ai ≤ 104 ) — позитивности записей в ленте. Соседние числа разделены ровно одним пробелом.

Выходные данные
Если Игорь сможет стать счастливым, выведите два числа — номер записи k , с которой следует начать просмотр, и количество записей c , которые нужно посмотреть. Если возможных ответов с минимальным c несколько, выведите тот, у которого k минимально.

Если же решения нет, выведите - 1.
 

Примеры
Входные данные Выходные данные
1 9 10
1 2 3 4 5 4 3 2 1
3 3
2 5 6
3 1 1 1 4
5 2
3 3 100
10 10 10
-1

ID 38292. Выбор конфет
Темы: Одномерные массивы    Разбор случаев   

Скоро у Гарри Поттера день рождения! Гермиона хочет приготовить для него необычный подарок. Она хочет подарить Гарри набор из n волшебных конфет. Каждая конфета характеризуется её вкусом — целым числом ti . Удовольствие , которое получит Гарри от набора конфет — это сумма вкусов всех конфет в этом наборе. Обратите внимание, что вкусы конфет, как и удовольствие Гарри, не обязательно должны быть положительными.

У Гермионы есть огромная коробка с конфетами, в которой для каждого целого числа t от - 109 до 109 лежит ровно одна конфета со вкусом t . Гермиона хочет взять из этой коробки n конфет, из которых будет состоять набор для Гарри.

Гермиона хочет, чтобы Гарри получил от подаренного ему набора конфет удовольствие, в точности равное целому числу s . Помогите ей выбрать подходящий набор или определите, что это невозможно.

Входные данные
Первая строка входных данных содержит единственное целое число n ( 1 ≤ n ≤ 100 ) — количество конфет, которое хочет Гермиона положить в набор. Вторая строка входных данных содержит единственное целое число s ( - 109 ≤ s ≤ 109 ) — удовольствие, которое должен получить Гарри от набора.

Выходные данные
Если составить желаемый набор из имеющихся у Гермионы конфет невозможно, выведите « NO ». Иначе, в первой строке выведите « YES », а во второй строке в произвольном порядке n чисел — вкусы конфет в искомом наборе. Если правильных ответов несколько, выведите любой из них.

Примеры
Входные данные Выходные данные
1 3
10
YES
500000000 -500000000 10

ID 38298. Нужно больше конфет!
Темы: Одномерные массивы    Использование сортировки   

У Карлсона дома есть набор из n банок с конфетами. Банки пронумерованы от 1 до n , в i -й из них лежит a i конфет. Карлсон считает набор банок симпатичным , если в этом наборе нет трех банок с разным числом конфет.

У Карлсона есть неограниченный запас конфет в карманах, поэтому он может добавить в любую банку произвольное число конфет. Помогите ему определить, какое минимальное общее число конфет ему придется добавить, чтобы набор банок с конфетами стал симпатичным.

Входные данные
Первая строка входных данных содержит натуральное число n ( 1 ≤ n ≤ 105 ) — количество банок в наборе Карлсона.

Вторая строка входных данных содержит n целых чисел a i ( 0 ≤ ai ≤ 109 ) — число конфет в банках. Соседние числа отделены друг от друга одним пробелом.

Выходные данные
Выведите одно число — минимальное общее количество конфет, которое придется добавить, чтобы Карлсон считал набор банок симпатичным.

Примечание
В первом тесте из примера Карлсон может добавить в первую банку две конфеты, а во вторую банку — одну конфету. Тогда в первой и четвертой банках будет лежать по 7 конфет, а во второй и третьей — по 2 конфеты.

Во втором тесте из примера набор банок исходно является симпатичным, добавлять конфеты не требуется.

Примеры
Входные данные Выходные данные
1 4
5 1 2 7
3
2 3
1 1 1
0

ID 38306. Лавочки
Темы: Одномерные массивы    Условный оператор   

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

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


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

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

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

Примеры
Входные данные Выходные данные
1 5 2
0 2
2
2 13 4
1 4 8 11
4 8
3 14 6
1 6 8 11 12 13
6 8

ID 39397. Громозека и Алиса - 2
Темы: Задача на реализацию    Одномерные массивы    Циклы   

Алиса и Громозека пошли гулять по городу. Заходя в первое кафе, Алиса посмотрела на часы и запомнила время входа. Далее она запоминала только количество минут, которое они с Громозекой тратили между двумя посещенными кафе (от входа в одно кафе, до входа в другое). По окончании прогулки, Алиса решила восстановить хронологию - время входа в очередное кафе.
Напишите программу, которая определит, в какое время Алиса и Громозека заходили в очередное кафе. 

Входные данные
В первой строке задан, момент времени, в который Громозека и Алиса вошли в первое кафе. Формат времени: часы (число от 00 до 23), далее идет двоеточие, затем минуты (число от 00 до 59). Строка времени записана без пробелов.
Во второй строке записано натуральное число N (2 <= N <= 1000) - количество посещенных кафе (включая кафе из которого они вышли в начальный момент времени и последнее кафе). В третьей строке записано N-1 число: первое показывает время в минутах от входа в первое кафе до входа во второе, второе - время от входа во второе кафе до входа в третье и т.д. Каждое из этих чисел натуральное и не превышает 1000.

Выходные данные
Выведите для каждого кафе время входа Алисы и Громозеки. Формат времени должен быть такой же, как и во входных данных.
 

Примеры
Входные данные Выходные данные
1 07:00
4
10 5 3
07:00
07:10
07:15
07:18

ID 21991. Циклический сдвиг вправо
Темы: Одномерные массивы    Работа с элементами (вставка, удаление, сдвиг)   

Дан массив из N элементов (N<=100) 
Напишите программу, которая осуществляет циклический сдвиг вправо элементов, стоящих на четных местах (нумерация элементов начинается с 0)

Входные данные
В первой строке вводится значение N. Далее во второй строке, вводится N чисел

Выходные данные
Вывести все элементы преобразованного массива.

 

Примеры
Входные данные Выходные данные
1
5
1 2 3 4 5
5 2 1 4 3

ID 42273. Дети в круг
Темы: Одномерные массивы    Работа с элементами (вставка, удаление, сдвиг)   

Анна Николаевна в детском саду играет с детьми в игру. По кругу стоят стулья. Все стулья пронумерованы от 1 до N (1 <= N <= 100000). Имя каждого ребенка закодировано натуральным числом, не превышающим 109. Анна Николаевна хлопает в ладоши раз  (|K| <= 100000) тихо или громко. Если Анна Николаевна хлопает в ладоши тихо, то все дети должны быстро пересесть на K стульев вправо. Если же Анна Николаевна хлопает в ладоши громко, то все дети должны быстро пересесть на K стульев влево. 

Чтобы Анне Николаевна было проще определять все ли дети пересели верно, напишите для нее программу, которая бы определяла положение каждого ребенка после пересаживания. 


В данной задаче нельзя использовать дополнительные массивы (списки). Обратите внимание, что нужно именно преобразовать имеющийся массив(список) и распечатать его целиком, а не создать новый, даже назвав его тем же самым именем (это возможно в языке Python).


Входные данные

В первой строке дано натуральное число N, во второй строке N целых чисел, а в последней целое число K. Все числа во входных данных не превышают 109. Если число K > 0, это означает, что Анна Николаевна хлопала в ладоши тихо. Число K < 0, это означает, что Анна  Николаевна хлопала в ладоши громко.


Выходные данные

Требуется вывести коды детей, которые будут занимать стулья с 1 по N после пересаживания. 

 
Примеры
Входные данные Выходные данные
1
5
5 3 7 4 6
3
7 4 6 5 3 

ID 18726. Карусель
Темы: Одномерные массивы   

В начальный момент в i-ом элементе массива записано число i (всего N элементов). 
Каждую секунду числа сдвигаются в следующую ячейку (из i-ой в i+1-ую), а из N-ой - в первую. 
Напечатать состояние массива через T секунд.


Входные данные
Программа получает на вход строку, в которой записаны два числа - N и T (1<=N<=100) и T (0<=T<=30000).

Выходные данные
Выведите N чисел - состояние массива через T секунд.
 
 
Примеры
Входные данные Выходные данные
1 5 3
3 4 5 1 2
 
 

ID 39516. Безумный ученый
Темы: Одномерные массивы    Цикл for   

Фермер Джон упорядочил N своих коров (1 ≤ N ≤ 1000) каждая из которых имеет одну из двух пород Holsteins или Guernseys. Он зафиксировал этот порядок в виде строки из N символов, каждый из которых либо H, либо G соответственно. К несчастью, когда коровы прибыли на ферму и он снова их выстроил, они образовали строку, отличную от исходной.

Назовём эти две строки A и B, где A - исходная строка, которую он хотел увидеть, B - строка которая получилась по прибытию коров. ФД попросил помощи у кузена Бена.

После нескольких месяцев работы, Бен создал замечательную машину MCBF-3000, которая способна взять любую подстроку и поменять в ней все G на H, а все H на G. Теперь ФД хочет узнать минимальное количество применений этой машины, которые позволят превратить строку B в строку A. Помогите ФД.

Входные данные
Первая строка содержит N, а следующие две строки содержат строки A и B. Каждая из строк состоит только из символов H и G.
Выходные данные
Выведите минимальное количество раз применения машины MCBF-3000 для трансформации строки B в строку A.

Примеры
Входные данные Выходные данные
1
7
GHHHGHH
HHGGGHH
2

ID 33202. Использование сортировки 2
Темы: Одномерные массивы    Квадратичные сортировки   

В каждом из двух классов учатся по n человек (10 <= n <= 30). Известны средний балл каждого ученика каждого класса, подсчитанные по ряду предметов (все значения целые). Определить, в каком классе у "третьего из самых успевающих учеников" средняя оценка больше. Вывести цифру "1" - для первого класса, "2" - для второго. Если оценки равны, вывести эту оценку.


Формат входных данных
В первой строке записано натуральное число n (n < 100) - количество учеников в каждом классе . Вторая строка содержит n положительных целых чисел class1i - средний балл i-го ученика первого класса (1 ≤ i ≤ n, 1 ≤ class1i ≤ 105). Третья строка содержит n положительных целых чисел class2i - средний балл i-го ученика первого класса (1 ≤ i ≤ n, 1 ≤ class2i ≤ 105).

Формат выходных данных
Выведите ответ на задачу.

ID 33205. Пятый самый легкий
Темы: Одномерные массивы    Квадратичные сортировки   

Формат входных данных
В первой строке записано натуральное число n (n < 100). Вторая строка содержит n положительных целых чисел mi - вес i-го предмета (1 ≤ i ≤ n, 1 ≤ ai ≤ 105). 

Формат выходных данных
Напечатайте массу предмета, являющегося "пятым самым легким предметом".

ID 33203. Средние в шеренге
Темы: Одномерные массивы    Квадратичные сортировки   

Формат входных данных
В первой строке записано натуральное число n (n < 100, n - четное). Вторая строка содержит n положительных целых чисел mi - рост i-го учащегося (1 ≤ i ≤ n, 1 ≤ ai ≤ 105). 

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

ID 33206. Сортировка по цифрам числа 1
Темы: Одномерные массивы    Квадратичные сортировки   

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

Формат входных данных
В первой строке записано натуральное число N (1<=N<=1000). Вторая строка содержит n двузначных положительных чисел numsi (1 ≤ i ≤ n, 10 ≤ numsi ≤ 99).

Формат выходных данных
Выведите ответ на задачу.

ID 33207. Сортировка по цифрам числа 2
Темы: Одномерные массивы    Квадратичные сортировки   

Дано N трехзначных чисел (1<=N<=1000). Необходимо вывести их в порядке возрастания.

Нельзя использовать встроенную сортировку

Пример
Входные данные

9
639 265 915 993 436 202 573 906 490 

Выходные данные
202 265 436 490 573 639 906 915 993

ID 1878. 1878
Темы: Одномерные массивы    Работа с элементами (вставка, удаление, сдвиг)   

Дан массив из N положительных элементов, больших 1 (2<=N<=100). Вставить значение a перед первым максимальным элементом, значение b после первого максимального элемента. 

Формат входных данных:
На входе подаются в первой строке N - число элементов массива
Вторая строка содержит число a и число b
Третья строка содержит N чисел - значения элементов массива

Формат выходных данных: Выведите результирующий массив в строку

Пример:
Ввод
5
100 200
43  50  76  84 100 

Вывод
43 50 76 84 100 100 200

ID 1876. 1876
Темы: Одномерные массивы    Работа с элементами (вставка, удаление, сдвиг)   

Дан массив из N положительных элементов, больших 1 (2<=N<=100). После каждого элемента вставить его минимальный делитель больший 1.

Формат входных данных:
На входе подаются в первой строке N - число элементов массива
Вторая строка содержит N чисел - значения элементов массива

Формат выходных данных: Выведите результирующий массив в строку

Пример:
Ввод
5
43  50  76  84 100 

Вывод
43 43 50 2 76 2 84 2 100 2

ID 24677. Средняя урожайность пшеницы
Темы: Одномерные массивы   

В области Че в каждом из N районов решили засеять свободные поля пшеницей. После жатвы всю пшеницу свозят в хранилище и считают, сколько было собрано урожая в каждом районе. Известная площадь, засеянная пшеницей (Ai, в гектарах) в каждом районе, и размер собранного урожая в каждом районе (Bi, в центнерах). Напишите программу, которая считает среднюю урожайность пшеницы по каждому району и по всей области в целом.

Входные данные
В первой строке вводится значение N - количество районов в области (1 <= N <= 1000). Во второй строке, вводится N чисел Ai - площади каждого района (1 <= Ai <= 109). Во второй строке, вводится N чисел Bi - урожайность каждого района (1 <= Bi <= 109).


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

 

Примеры
Входные данные Выходные данные
1
5
10 20 25 30 35
30 40 50 60 70
3.000000 2.000000 2.000000 2.000000 2.000000
2.083333
 

ID 7147. Оценка спортсмена
Темы: Одномерные массивы   

В некоторых видах спортивных состязаний (например, в фигурном катании) выступление каждого спортсмена независимо оценивается восемью судьями, затем из всей совокупности оценок удаляются наиболее высокая и наиболее низкая, а для оставшихся оценок вычисляется среднее арифметическое, которое и идет в зачет спортсмену. Если наиболее высокую оценку выставило несколько судей, то из совокупности оценок удаляется только одна такая оценка; аналогично поступают и с наиболее низкими оценками.

Известны оценки, выставленные восемью судьями одному из участников соревнований. Составить программу для расчета оценки, которая пойдет в зачет этому спортсмену.

Входные данные
В первой строке идут 8 чисел через пробел (каждое число от 0 до 10).

Выходные данные
Вывести оценку, которая пойдет в зачет спортсмену.
 
Пример
Входные данные Выходные данные
1 3 9 7 8 9 5 7 10 7.5

ID 7146. Самый высокий и самый низкий
Темы: Одномерные массивы   

В массиве хранится информация о росте 25 человек. Определить, на сколько рост самого высокого человека превышает рост самого низкого.

Входные данные
На вход подается строка, содержащая 25 натуральных чисел, разделенных пробелом. Каждое число не больше 250.

Выходные данные
Выведите на ответ на задачу.

ID 29447. OLD or YOUNG
Темы: Одномерные массивы   

Известен возраст группы людей в списке. Какой человек указан в списке раньше: самый старый или самый молодой? Если самых старых (молодых) несколько, то учитывайте того, кто встретился раньше.

Входные данные
В первой строке вводится число N - количество людей в списке (1<N<=100). Во второй строке вводятся N чисел - возраст людей в списке (каждое число в диапазоне от 0 до 120).

Выходные данные
Вывести на экран слово OLD,  если самый старый человек встречается в списке раньше, иначе слово YOUNG, если раньше встречается самый молодой.
 

Примеры
Входные данные Выходные данные
1
10
67 99 43 95 32 107 65 104 1 31 
OLD
2
10
1 99 43 95 32 107 65 104 1 31 
YOUNG

ID 7150. С разницей в 10
Темы: Одномерные массивы   

Известна численность каждого из 40 классов школы. Верно ли, что в самом многочисленном классе учится на 10 учеников больше, чем в самом малочисленном? Вывести на экран слово YES, если ответ на вопрос да, или NO в противном случае.

Входные данные
Во входной строке идут целых 40 чисел, каждое число не больше 150.

Выходные данные
Выведите на экран ответ YES, если в самом многочисленном классе учится на 10 учеников больше, чем в самом малочисленном. В противном случае выведите NO.

ID 38701. Список Сергея Николаевича
Темы: Одномерные массивы   

Сергей Николаевич любит заниматься статистикой. В его распоряжение попался список роста всех учащихся лицея. К его огорчению все данные были записаны в произвольном порядке и к тому же занимали несколько страниц. На одной странице помещается запись о 25 учащихся. Помогите Сергею Николаевичу определить на какой странице находится информация о первом самом высоком и первом самом низком учениках лицея. Страницы нумеруются с 1.

Входные данные
В первой строке вводится число N - количество людей в списке (1<N<=105). Во второй строке вводятся N чисел - рост людей в списке (каждое число в диапазоне от 100 до 220).

Выходные данные
Выведите на экран 2 числа в одной строке через пробел:
- первое число - номер страницы, на которой располагается информация о первом самом высоком ученике;
- второе число - номер страницы, на которой располагается информация о первом самом низком ученике. 
 

Примеры
Входные данные Выходные данные
1
10
112 136 165 205 122 116 177 212 107 169  
1 1

ID 38702. Список Сергея Николаевича - 2
Темы: Одномерные массивы   

Сергей Николаевич любит заниматься статистикой. В его распоряжение попался список роста всех учащихся лицея. К его огорчению все данные были записаны в произвольном порядке и к тому же занимали несколько страниц. Узнав рост самого высокого и самого низкого из учащихся, Сергей Николаевич стал искать эти данные по списку. На чтение одной записи у него уходит 1 миллисекунда. Определить сколько миллисекунд понадобится Сергею Николаевичу, чтобы найти записи о самом высоком и самом низком учениках. Если таких учеников несколько Сергей Николаевич берет первого встретившегося.

Входные данные
В первой строке вводится число N - количество людей в списке (1<N<=105). Во второй строке вводятся N чисел - рост людей в списке (каждое число в диапазоне от 100 до 220).

Выходные данные
Выведите на экран одно число - количество милисекунд, которое понадобиться Сергею Николаевичу, чтобы найти требуемые записи.
 

Примеры
Входные данные Выходные данные
1
10
112 136 165 205 122 116 177 212 107 169  
9

ID 38709. Спасём ли Либанк
Темы: Одномерные массивы   

Международный банк Либанк имеет N отделений по всему миру. После окончания пандемии короновируса, финансовый отдел банка решил проверить отчетность всех отделений. Выяснилось, что некоторые отделения остались в долгу, а некоторые даже успели получить прибыль. Теперь финансовые директора решили спасти все отделения с минимальным одинаковым долгом. Они хотят понять, можно ли покрыть все их долги, если использовать средства всех отделений с минимальной одинаковой прибылью. Вам как сотруднику IT отдела было выдано данное задание. Финансовые директора ждут от вас ответа!

Входные данные
В первой строке задается число N (2<=N<=500) - количество отделений Либанка. Во второй строке записаны N чисел a(-1000<=ai<=1000, 0<=i<N) - положительными числами обозначены прибыли отделений, отрицательными - долги. Известно, что хотя бы одно отделение Либанка получило прибыль и хотя бы одно отделение осталось в долгу.

Выходные данные
Если все указанные отделения можно спасти, выведите на экран сумму, которая останется после покрытия всех долгов отделений с минимальным одинаковым долгом. Если спасти нельзя выведите отрицательное число, показывающая сколько денег не хватает.
 

Примеры
Входные данные Выходные данные
1 10
-1 4 -10 0 -8 -1 -8 8 -2 8 
2

ID 43517. Праздник Осени
Темы: Одномерные массивы   

В детском саду Солнышко на Праздник Осени у всех детей должно быть по одинаковому числу воздушных шариков. Воспитательница Анна Николаевна узнала, сколько воздушных шариков сможет принести из дома каждый ребенок на праздник.  Чтобы уравнять количество шариков у всех детей, родительский комитет решил закупить необходимое число воздушных шариков.

Всего в группе у Анны Николаевны n воспитанников, количество имеющихся воздушных шариков у каждого каждого ребенка равно ai.

Вы - казначей родительского комитета, которому необходимо посчитать минимальное количество воздушных шариков, которое необходимо закупить, чтобы уравнять их число у каждого ребенка.

Будем считать, что воздушные шарики, имеющиеся у детей, не лопнут до конца праздника.

 

Входные данные

В первой строке входных данных содержится целое число n (1 <= n <= 100) — количество воспитанников в группе у Анны Николаевны.

Во второй строке содержатся n чисел a1,a2, ..., an, где ai (0 <= ai <= 106) — количество воздушных шариков, которое i-й ребенок сможет принести из дома.

 

Выходные данные

В единственную строку выходных данных выведите выведите целое число — минимальное количество воздушных шариков, которое которое необходимо закупить.

 
Примеры
Входные данные Выходные данные
1 5
0 1 2 3 4
10
2 5
1 1 0 1 1
1
3 3
1 3 1
4
4 1
12
0

ID 43532. Книжки с полки
Темы: Одномерные массивы    Задача на реализацию   

Петя обладает обширной библиотекой книг. Сейчас он стоит возле полки с приключенческими рассказами. На ней расположены n книг. Все книги на полке у Пети всегда пронумерованы слева направо. Книга с номером i имеет ai страниц. На полке, возле которой сейчас стоит Петя, количество страниц в каждой книге различно.

Особенность полок в библиотеке Пети такова, что он может брать только крайнюю книгу с полки (то есть либо самую левую, либо самую правую).

Петя уезжает на каникулы к бабушке и хочет с собой взять две книги, самую толстую и самую тонкую. Помогите Пете узнать, какое минимальное количество книг ему необходимо убрать с полки, прежде чем в его руках окажутся две нужные ему книги. Обратите внимание, что самую толстую и самую тонкую книги Петя также убирает в с полки, поэтому они тоже считаются. 

 

Входные данные
В первой строке записано одно целое число n (2 <= n <= 100) - количество книг на полке. Во второй строке находится n целых различных чисел a1, a2, ..., an (1 <= ai <= 106) - количество страниц в книге.

 

Выходные данные
Выведите одно целое число — минимальное количество книг, которое необходимо Пете убрать с полки.

 
Примеры
Входные данные Выходные данные
1
5
1 5 4 3 2
2
2
8
2 1 3 4 5 6 8 7
4

ID 33254. +-=
Темы: Одномерные массивы   

Массив A содержит n целых чисел. Вывыдите знак >, если количество минимальных полжительных чисел больше, чем максимальных отрицательных. Выведите знак <, если количество минимальных положительных чисел меньше, чем максимальных отрицательных. При равенстве выведите знак =.
Если среди чисел нет положительных (отрицательных), то количество минимальных положительных (максимальных отрицательных) считать равным 0.
 

Входные данные
Первая строка входных данных содержит число n (0 <= n <= 105). Вторая строка содержит n целых чисел ai- элементы массива (-109 <= ai <= 109).

Выходные данные
Выведите один знак (>, <, =) - ответ на задачу.

 

Примеры
Входные данные Выходные данные
1 5
1 1 2 -2 -1
>
2 7
1 1 2 -1 -1 -2 -3
=

ID 38703. Список Сергея Николаевича - 3
Темы: Одномерные массивы   

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

Входные данные
В первой строке вводится число N - количество людей в списке (1<N<=105). Во второй строке вводятся N чисел - возраст людей в списке (каждое число в диапазоне от 100 до 220).

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

Примеры
Входные данные Выходные данные
1
10
212 107 165 205 122 116 177 212 107 212
3 2

ID 7151. 7151
Темы: Одномерные массивы    Перебор   

Известны очки (3или 0), полученные футбольной командой за ряд игр в порядке их проведения. Известно, что команда как минимум одну игру выиграла и как минимум одну игру проиграла.
Что было раньше: первый выигрыш (3 очка) или первый проигрыш (0 очков)?
В первой строке вводится количество проведенных командой игр (не менее 2 и не более 15).
Во второй строке вводятся очки за каждую проведенную игру.
Если выигрыш встретился раньше, то вывести слово WIN.
Если проигрыш встретился раньше, то вывести слово LOSE.


 

Примеры
Входные данные Выходные данные
1
4
1 0 1 3
LOSE

ID 29441. Первый с минимальной премией
Темы: Одномерные массивы   

В массиве хранится информация о годовой премии у N сотрудников фирмы. Определить порядковый номер первого сотрудника с самой низкой годовой премией.

Входные данные
В первой строке задается число N - количество сотрудников фирмы (0<N<=50). Во второй строке задаются значения премий N сотрудников фирмы (N чисел, каждое число положительное, не больше 105).

Выходные данные
Вывести номер первого сотрудника с минимальной премией.
 

Примеры
Входные данные Выходные данные
1 5
4 3 5 5 3
2

ID 29444. Последний самый старший
Темы: Одномерные массивы   

В массиве хранится информация о годе рождения каждого из N человек. Определить порядковый номер последнего самого старшего по возрасту человека. 

Входные данные
В первой строке задается число N - число человек (0<N<=50). Во второй строке задаются года рождения N человек (N чисел, каждое число положительное, не больше 105).

Выходные данные
Вывести номер последнего самого старшего человека.
 

Примеры
Входные данные Выходные данные
1 5
1904 1903 1905 1905 1903
5

ID 29439. Первый самый быстрый
Темы: Одномерные массивы   

В массиве хранится информацию о максимальной скорости каждой из N марок легковых автомобилей. Определить порядковый номер первого встретившегося автомобиля с самой высокой скоростью.

Входные данные
В первой строке задается число N - количество авомобилей (0<N<=50). Во второй строке задаются значения скоростей N автомобилей (N чисел, каждое число положительное, не больше 105).

Выходные данные
Вывести номер первого самого быстрого автомобиля.
 

Примеры
Входные данные Выходные данные
1 5
4 3 5 3 5
3

ID 29442. Последний с минимальной премией
Темы: Одномерные массивы   

В массиве хранится информация о годовой премии у N сотрудников фирмы. Определить порядковый номер последнего сотрудника с самой низкой годовой премией.

Входные данные
В первой строке задается число N - количество сотрудников фирмы (0<N<=50). Во второй строке задаются значения премий N сотрудников фирмы (N чисел, каждое число положительное, не больше 105).

Выходные данные
Вывести номер последнего сотрудника с минимальной премией.
 

Примеры
Входные данные Выходные данные
1 5
4 3 5 3 5
4

ID 29445. Первый самый младший
Темы: Одномерные массивы   

В массиве хранится информация о годе рождения каждого из N человек. Определить порядковый номер первого самого младшего по возрасту человека. 

Входные данные
В первой строке задается число N - число человек (0<N<=50). Во второй строке задаются года рождения N человек (N чисел, каждое число положительное, не больше 105).

Выходные данные
Вывести номер первого самого младшего человека.
 

Примеры
Входные данные Выходные данные
1 5
1904 1903 1905 1905 1903
3

ID 29440. Последний самый быстрый
Темы: Одномерные массивы   

В массиве хранится информацию о максимальной скорости каждой из N марок легковых автомобилей. Определить порядковый номер последнего встретившегося автомобиля с самой высокой скоростью.

Входные данные
В первой строке задается число N - количество авомобилей (0<N<=50). Во второй строке задаются значения скоростей N автомобилей (N чисел, каждое число положительное, не больше 105).

Выходные данные
Вывести номер последнего встретившегося автомобиля с самой высокой скоростью.
 

Примеры
Входные данные Выходные данные
1 5
4 3 5 5 3
4

ID 29443. Первый самый старший
Темы: Одномерные массивы   

В массиве хранится информация о годе рождения каждого из N человек. Определить порядковый номер первого самого старшего по возрасту человека. 

Входные данные
В первой строке задается число N - число человек (0<N<=50). Во второй строке задаются года рождения N человек (N чисел, каждое число положительное, не больше 105).

Выходные данные
Вывести номер первого самого старшего человека.
 

Примеры
Входные данные Выходные данные
1 5
1904 1903 1905 1905 1903
2

ID 29448. Роза ветров
Темы: Одномерные массивы    Алгоритмы обработки   

При выборе места строительства жилого комплекса при металлургическом комбинате необходимо учитывать "розу ветров" (следует расположить жилой комплекс так, чтобы частота ветра со стороны металлургического комбината была бы минимальной). Для этого в течении года проводилась регистрация направления ветра в районе строительства. Данные представлены в виде массива, в котором направление ветра ветра за каждый день (365) кодируется следующим образом: 
1 - северный (N),
2 - южный (S)
3 - восточный (E)
4 - западный (W)
5 - северо-западный (NW)
6 - северо - восточный (NE)
7 - юго-западный (SW)
8 - юго-восточный (SE).
Определить, как должен быть расположен жилой комплекс по отношению к комбинату

Входные данные: 
В первой строке подается 365 значений от 1 до 8 (направление ветра)

Выходные данные:
Вывести соответствующие буквы (аббревиатуру - смотри список выше), с какой стороны следует построить жилой комплекс
 

ID 38606. Пара с одинаковыми знаками
Темы: Одномерные массивы   

Дан массив, состоящий из целых чисел. Напишите программу, которая определяет, есть ли в массиве пара соседних элементов с одинаковыми знаками.

Входные данные
Сначала задано число N — количество элементов в массиве (1 ≤ N ≤ 10000). Далее через пробел записаны N ненулевых чисел - элементы массива. Массив состоит из целых чисел.

Выходные данные
Необходимо вывести слово YES, если существует пара соседних элементов с одинаковыми знаками. В противном случае следует вывести слово NO.

Примеры
Входные данные Выходные данные
1 5
1 -3 4 -2 1
NO

ID 42271. Количество элементов, больших обоих соседей
Темы: Одномерные массивы    Алгоритмы обработки   

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


Входные данные

Сначала задано число N - количество элементов в массиве (1 <= N <= 10000). Далее через пробел записаны N чисел - элементы массива. Массив состоит из целых чисел.


Выходные данные

Необходимо вывести количество элементов массива, у которых два соседа и которые при этом строго больше обоих своих соседей.

 
Примеры
Входные данные Выходные данные
1
5
1 2 3 4 5
0
2
5
2 3 2 4 3
2

ID 12474. 12474
Темы: Одномерные массивы   

Входные данные
В первой строке записано число (2<=N<=100) - количество элементов в массиве. Во второй строке записаны  N чисел - элементы массива.

Выходные данные
Выведите одно число - количество пар одинаковых чисел.
В данной задаче под парой подразумеваются два различных по индексу элемента массива.
 
Примеры
Входные данные Выходные данные Примечание
1 5
1 3 2 2 3
2 пары чисел, стоящих на местах: (3, 4) и (2, 5)
2 4
1 1 1 1
6
пару одинаковых чисел образовывают любые два числа 
массива, поэтому ответом будет число пар, которое вообще
может быть 
это пары чисел, стоящих на местах: (1,2), (1,3), (1,4), (2,3), (2,4), (3,4)
 

ID 18697. Количество пар одинаковых чисел, стоящих рядом
Темы: Одномерные массивы   

Среди заданных N натуральных чисел определить сколько среди них пар одинаковых чисел, стоящих рядом.

Входные данные
В певрой строке задается натуральное число N - количество чисел. Во второй строке - N натуральных чисел (\(2<=N<=100\), все числа не превышают 100).

Выходные данные
Выведите одно число - количество пар одинаковых чисел, стоящих рядом.
 
 
Примеры
Входные данные Выходные данные
1
5
1 3 2 2 3
1
2
4
1 1 1 1
3

ID 18698. Найти одинаковые
Темы: Одномерные массивы   

Вводится число N, а затем N чисел - элементов массива (\(1<=N<=100\)), элементы массива - натуральные числа, не превышающие 100. 
Необходимо определить номера мест в массиве, на которых стоят  одинаковые элементы, или два числа 0 (то есть 0 0), если все элементы различны. Если есть несколько пар чисел, являющихся ответом, вывести любую из них.


Входные данные
В первой строке задается натуральное число N - количество чисел. Во второй строке - N натуральных чисел (\(2<=N<=100\), все числа не превышают 100).

Выходные данные
Выведите ответ на задачу.
 
 
Примеры
Входные данные Выходные данные
1
1 2 1 3 4     
1 3
2
4
1 2 3 4
0 0

ID 38188. Симметричная последовательность
Темы: Одномерные массивы   

Последовательность чисел назовем симметричной, если она одинаково читается как слева направо, так и справа налево. Например, следующие последовательности являются симметричными:
1 2 3 4 5 4 3 2 1
1 2 1 2 2 1 2 1
Вашей программе будет дана последовательность чисел. Требуется определить, какое минимальное количество и каких чисел надо приписать в конец этой последовательности, чтобы она стала симметричной.

Входные данные
Сначала вводится число N — количество элементов исходной последовательности (1 ≤ N ≤ 100). Далее идут N чисел — элементы этой последовательности, натуральные числа от 1 до 9.

Выходные данные
Выведите сначала число M — минимальное количество элементов, которое надо дописать к последовательности, а потом M чисел (каждое — от 1 до 9) — числа, которые надо дописать к последовательности.

Примеры

Входные данные Выходные данные
1 9
1 2 3 4 5 4 3 2 1
0
2 5
1 2 1 2 2
3
1 2 1
3 5
1 2 3 4 5
4
4 3 2 1

ID 38295. Мне только справочку!
Темы: Одномерные массивы   

У доктора Риты сегодня трудный рабочий день, и она ушла на обеденный перерыв. За это время к ее кабинету выстроилась очередь из n человек! Очередь большая, поэтому в помещении быстро стало очень душно.

Для удобства пронумеруем пациентов натуральными числами от 1 до n в том порядке, в котором они изначально стояли в очереди: первым стоял человек с номером 1 , вторым — с номером 2 , и так далее. Последним был человек с номером n .

Далее, пока Рита не вернулась с обеда, t раз происходило следующее событие: кому-то из очереди становилось очень душно. Из-за этого он выходил на улицу подышать свежим воздухом, и тут же возвращался обратно, вставая в конец очереди.

Внимательный пациент Арсений записал номера всех, кто выходил подышать, в том порядке, в котором это происходило. Теперь Арсению интересно, в каком порядке стоят люди в очереди. Помогите ему выяснить это!

Известно, что никто из очереди окончательно не уходил и никто новый не приходил. Очередной человек выходил подышать только после того, как предыдущий человек, выходивший подышать, возвращался в конец очереди.

Входные данные
В первой строке входных содержатся два числа n и t — число людей в очереди и количество событий, что человек вышел на улицу подышать ( 1 ≤ n , t ≤ 100 000 ).

Во второй строке входных данных содержатся t чисел a i ( 1 ≤ ai ≤ n ) — номера людей, выходивших подышать и затем встававших в конец очереди в том порядке, в котором они это делали.

Выходные данные
Выведите n чисел — номера людей в порядке очереди после всех перестановок.

Примечание
В тесте из примера происходили следующие изменения с очередью:

Человек с номером 2 перешёл в конец. Порядок людей: 1 , 3 , 4 , 2
Человек с номером 3 перешёл в конец. Порядок людей: 1 , 4 , 2 , 3
Человек с номером 1 перешёл в конец. Порядок людей: 4 , 2 , 3 , 1
Человек с номером 2 перешёл в конец. Порядок людей: 4 , 3 , 1 , 2
Человек с номером 1 перешёл в конец. Порядок людей: 4 , 3 , 2 , 1
Порядок людей в очереди в конце: 4 , 3 , 2 , 1 .
 

Примеры
Входные данные Выходные данные
1 4 5
2 3 1 2 1
4 3 2 1

ID 38695. Четные индексы
Темы: Одномерные массивы   

Дан массив, состоящий из целых чисел. Нумерация элементов начинается с 0. Напишите программу, которая выведет элементы массива с четными индексами (0, 2, 4...).


Входные данные
Сначала задано число N — количество элементов в массиве (1<=N<=100). Далее через пробел записаны N целых исел — элементы массива. 

Выходные данные
Необходимо вывести все элементы массива с чётными индексами.
 
Примеры
Входные данные Выходные данные
1 6
4 5 3 4 2 3
4 3 2
 

ID 38696. Вывод нечетных
Темы: Одномерные массивы   

Дан массив, состоящий из N целых чисел. Напишите программу, которая выводит нечетные элементы массива (то есть те элементы, которые являются нечетными числами).

Входные данные
Сначала задано число N — количество элементов в массиве (1<=N<=100). Далее, с новой строки, через пробел записаны N чисел — элементы массива. Массив состоит из целых чисел, по модулю не превышающих 100.
 
Выходные данные
Необходимо вывести все нечетные элементы массива.
 
 
Примеры
Входные данные Выходные данные
1 5
1 2 3 4 5
1 3 5

ID 33232. Нечетные индексы
Темы: Одномерные массивы   

Дан массив, состоящий из целых чисел. Нумерация элементов начинается с 0. Напишите программу, которая выведет элементы массива с нечетными индексами (1, 3, 5...).


Входные данные
Сначала задано число N — количество элементов в массиве (1<=N<=100). Далее через пробел записано N чисел — элементы массива. Массив состоит из целых чисел, по модулю не превышающих 100.

Выходные данные
Необходимо вывести все элементы массива с нечётными индексами.
 
Примеры
Входные данные Выходные данные
1 6
4 5 3 4 2 3
5 4 3
 

ID 33233. Вывод четных
Темы: Одномерные массивы   

Дан массив, состоящий из N целых чисел. Напишите программу, которая выводит четные элементы массива (то есть те элементы, которые являются четными числами).

Входные данные
Сначала задано число N — количество элементов в массиве (1<=N<=100). Далее через пробел записаны N чисел — элементы массива. Массив состоит из целых чисел, по модулю не превышающих 100.
 
Выходные данные
Необходимо вывести все четные элементы массива.
 
 
Примеры
Входные данные Выходные данные
1 5
1 2 3 4 5
2 4

ID 38697. Нечетные на нечетных
Темы: Одномерные массивы   

Дан массив, состоящий из N целых чисел. Напишите программу, которая выводит нечетные элементы массива (то есть те элементы, которые являются нечетными числами), имеющие нечетные индексы (нумерация элементов начинается с 0).

Входные данные
Сначала задано число N — количество элементов в массиве (1<=N<=100). Далее через пробел записаны N чисел — элементы массива. Массив состоит из целых чисел, по модулю не превышающих 100.
 
Выходные данные
Необходимо вывести все нечетные элементы массива, имеющие нечетные индексы.
 
 
Примеры
Входные данные Выходные данные
1 5
1 1 3 4 6
1

ID 38698. Нечетные на четных
Темы: Одномерные массивы   

Дан массив, состоящий из N целых чисел. Напишите программу, которая выводит нечетные элементы массива (то есть те элементы, которые являются нечетными числами), имеющие четные индексы (нумерация элементов начинается с 0).

Входные данные
Сначала задано число N — количество элементов в массиве (1<=N<=100). Далее через пробел записаны N чисел — элементы массива. Массив состоит из целых чисел, по модулю не превышающих 100.
 
Выходные данные
Необходимо вывести все нечетные элементы массива, имеющие четные индексы.
 
 
Примеры
Входные данные Выходные данные
1 5
1 1 3 4 6
1 3

ID 38699. Четные на нечетных
Темы: Одномерные массивы   

Дан массив, состоящий из N целых чисел. Напишите программу, которая выводит четные элементы массива (то есть те элементы, которые являются четными числами), имеющие нечетные индексы (нумерация элементов начинается с 0).

Входные данные
Сначала задано число N — количество элементов в массиве (1<=N<=100). Далее через пробел записаны N чисел — элементы массива. Массив состоит из целых чисел, по модулю не превышающих 100.
 
Выходные данные
Необходимо вывести в одной строке через пробел все четные элементы массива, имеющие нечетные индексы. 
 
 
Примеры
Входные данные Выходные данные
1 5
1 2 3 4 6
2 4

ID 38700. Четные на четных
Темы: Одномерные массивы   

Дан массив, состоящий из N целых чисел. Напишите программу, которая выводит четные элементы массива (то есть те элементы, которые являются четными числами), имеющие четные индексы (нумерация элементов начинается с 0).

Входные данные
Сначала задано число N — количество элементов в массиве (1<=N<=100). Далее через пробел записаны N чисел — элементы массива. Массив состоит из целых чисел, по модулю не превышающих 100.
 
Выходные данные
Необходимо вывести все четные элементы массива, имеющие четные индексы.
 
 
Примеры
Входные данные Выходные данные
1 5
1 1 3 4 6
6

ID 43565. В обратном порядке
Темы: Одномерные массивы   

Дан массив, состоящий из N целых чисел. Напишите программу, которая выводит элементы массива в обратном порядке.

Входные данные
Сначала задано число N — количество элементов в массиве (1<=N<=100). Далее через пробел записаны N чисел — элементы массива. Массив состоит из целых чисел, по модулю не превышающих 100.
 
Выходные данные
Необходимо вывести все элементы массива в обртаном порядке.
 
 
Примеры
Входные данные Выходные данные
1 5
1 1 3 4 6
6 4 3 1 1

ID 12473. 12473
Темы: Одномерные массивы   

Вводится сначала число N, а затем N чисел. Выведите эти Nчисел в следующем порядке: сначала выводятся числа, стоящие на нечетных местах, а затем - стоящие на четных местах (места нумеруются с 1).
 
Входные данные
Вводится число N (0<N<100), а затем N чисел, не превышающи по модулю 1000.
 
 
 
Примеры
Входные данные Выходные данные
1
7
2 4 1 3 5 3 1
2 1 5 1 4 3 3
 
 
 

ID 12472. 12472
Темы: Одномерные массивы   

Вводится сначала число N, а затем N чисел. Выведите эти чисел в следующем порядке: сначала выводятся все нечетные числа в том порядке, в котором они встречались во входных данных, а затем - все четные, также в исходном порядке.
 
Входные данные
Вводится число N (0 < N < 100), а затем N натуральных чисел, не превышающих 1000.
 
Выходные данные
Выведите элементы массива в том порядке, в котором описано в условии
Примеры
Входные данные Выходные данные
1 7
2 4 1 3 5 3 1
1 3 5 3 1 2 4
 
 

ID 38529. Новый вопрос
Темы: Одномерные массивы    Информатика    Одномерные массивы   

ID 39382. Ты решишь это?
Темы: Одномерные массивы    Алгоритмы обработки   

Есть N частей некоторого исходного кода. Характеристики i-й части кода представлены M целыми числами Ai1, Ai2, ..., AiM . Вам даны целые числа B1, B2, ..., BM и C.
i-я часть кода правильно решает задачу тогда и только тогда, когда \( A_{i1}\cdot B_1 + A_{i2}\cdot B_2 + ...+ A_{iM}\cdot B_M +C>0\).
Среди N частей исходного кода найдите количество, которые правильно решают эту задачу.

Входные данные
В первой строке заданы три числа через пробел: N, M (1 <= N, M <= 20) и C (-100 <= C <= 100). Во второй строке задано  M чисел Bi (-100 <= B<= 100). Каждая из следующих N строк содержит чисел Ai (-100 <= Aij <= 100, 1 <= i <= N, 1 <= j <= M).

Выходные данные
Выведите одно число - ответ на задачу.
 

Примеры
Входные данные Выходные данные
1 2 3 -10
1 2 3
3 2 1
1 2 2
1
2 5 2 -4
-2 5
100 41
100 40
-3 0
-6 -2
18 -13
2
3 3 3 0
100 -100 0
0 100 100
100 100 100
-100 100 100
0

ID 42268. Спрятанная карта
Темы: Одномерные массивы    Алгоритмы обработки   

В колоде у Громозеки находятся карты, на которых написано по одному целому числу. Каждое число в колоде встречается ровно 4 раза. 
Таким образом, в колоде имеются 4 карты с числом 1, 4 карты с числом 2, ..., 4 карты с числом N. Всего в колоде 4*N карт.

Громозека перетасовал эти карты, а затем спрятал одну из них и дал вам стопку оставшихся 4*N-1 карт. На i-й карте (1<= i <=4*N−1) из стопки написано целое число Ai.

Найдите целое число, записанное на карте, которую спрятал Громозека.

Входные данные
Программа получает на вход две строки. Первая строка содержит целое число N (1 <= N <= 105).  Вторая строка содержит 4*N-1 целых чисел Ai (1 <= Ai <= 4*N−1. 1<= i <=4*N−1). Для каждого (1<=k<=N) существует не более 4 индексов i, таких, что Ai=k.


Выходные данные
Выведите ответ на задачу.
 
 

Примеры
Входные данные Выходные данные
1 3
1 3 2 3 3 2 2 1 1 1 2
3
2 1
1 1 1
1
3 4
3 2 1 1 2 4 4 4 4 3 1 3 2 1 3
2

ID 42274. С видом на океан
Темы: Одномерные массивы   

С востока на запад простираются горы, а на западе - океан. На вершине каждой горы есть отель. Вы хотите выбрать, в каком отеле остановиться. Высота i-й горы с запада равна Hi. Вы, конечно, можете увидеть океан из отеля, который расположен на вершине самой западной горы. Для отеля на вершине i-й горы с запада (i = 2, 3, ..., N) вы сможете увидеть океан тогда и только тогда, когда H1<=HiH2<=Hi, ... и Hi-1<=Hi. Посчитайте, со скольких из этих отелей вы сможете увидеть океан?

Входные данные
В первой строке записано натуральное число N (1 <= N <= 20) - количество гор. Вторая строка содержит N чисел Hi (1 <= Hi <= 100) высоты гор, начиная с самой западной (первой).


Выходные данные
Выведите количество отелей, из которых вы сможете увидеть океан.
 
 

Примеры
Входные данные Выходные данные
1
4
6 5 6 8
3
2
5
4 5 3 5 4
3
3
5
9 5 6 8 4
1

ID 42450. Меняю конфеты на ноутбук
Темы: Одномерные массивы    Динамическое программирование    Использование сортировки    Порядковые статистики    Динамическое программирование: один параметр   

Антон Б., суперспособный ученик 8 класса, обладает неудивительными математическими способностями. Побывав однажды на экскурсии в Колоколамске, он понял, что легко может написать программу, которая бы предсказывала стоимость его любимых конфет на любой промежуток дней вперед. 
Используя эту программу, Антон Б. решил  приобрести на все свои карманные деньги конфеты (а их у него было всего 10 рублей), затем, чуть позже, продать все купленные им конфеты. Таким образом, Антон Б. хочет заработать как можно больше денег на новый ноутбук. 
Так как  Антон Б. еще несовершеннолетний и один ездить в другие города не может, ему нужно понять, в какие из двух дней попросить старшего брата отвезти его в Колоколамск. Старший брат совершеннолетний и очень любит своего младшего брата, поэтому всегда готов ему помочь.
Так как Антон Б. очень торопится на кружок по информатике, он просит вас определить эти два дня в ближайшие N дней. 

Входные данные
В первой строке записано число N (2 <= N <= 100000) количество дней, на которые Антон Б. делает прогноз. Вторая строка содержит целых положительных чисел ai (1 <= i <= , 1 <= ai <=  5000 ), где ai - предсказанная стоимость конфет в i-й день.

Выходные данные

Выведите два числа: первое число - номер дня, в который Антон Б. поедет покупать конфеты, второе - номер дня, в который он поедет продавать конфеты. В случае, если таких вариантов дней несколько, выведите любой из них. Если Антон Б. в итоге не сможет получить прибыль ни при каких вариантах, то выведите два нуля.

 
Примеры
Входные данные Выходные данные
1
6
10 3 5 3 11 9
2 5 
2
4
5 5 5 5
0 0

ID 42838. Пять блюд
Темы: Одномерные массивы   

В лунном ресторане Селена подают следующие пять блюд:

Нягао (рисовый пирог): на подачу уходит А минут.
Цзяо (пельмени): на подачу уходит B минут.
Тан (сладкие рисовые шарики): для подачи на стол требуется C минут.
Шиитаке (тушеные грибы): на подачу уходит D минут.
Ханбагу (котлета для гамбургера): на подачу уходит E минут.

Будем считать, что время подачи блюда - это время между размещением заказа и доставкой блюда.

В лунном ресторане действуют следующие правила в отношении заказов:

  • Заказ может быть размещен только в момент времени, кратный 10 минутам (0, 10, 20, ... минут). 
  • Одновременно можно заказать только одно блюдо.
  • Новый заказ не может быть размещен, если еще не доставлено блюдо предыдущего заказа. Но новый заказ может быть размещен точно в то время, когда доставлено блюдо из предыдущего заказа.

Громозека прибыл в этот ресторан в 0 минут. Он желает заказать все пять блюд. Определите через какое минимальное количество минут будет доставлено последнее блюдо. Громозека может заказать блюда в любом порядке, который ему нравится, и он может сделать заказ уже в момент 0 минут. Время на Луне отсчитывается только в минутах.

Входные данные
Программа получает на вход 5 целых чисел А, B, C, D, E (1 <= A, B, C, D, E <= 123). Каждое число в отдельной строке.

Выходные данные
Выведите на экран целое число - ответ на задачу.
 
Примеры
Входные данные Выходные данные Примечание
1 29
20
7
35
120

215

Если мы решим заказать блюда в порядке Нягао, Цзяо, Тан, Хангбау, Шиитаке, то максимально раннее время для каждого заказа будет следующим:

Закажите Нягао в 0 минут, который будет доставлен через 29 минут. Текущий момент времени будет 29 минут.
Закажите Цзяо в 30 минут, которое будет в момент 50 минут . 
Закажите Тан в момент 50 минут, который будет доставлен в момент 57 минут.
Закажите Ханбагу в момент 60, который будет доставлен в момент 180 минут.
Закажите Шиитаке в 180 минут, который будет доставлен в момент 215 минут.
Невозможно заказать блюда другим способом так, чтобы последнее блюдо было бы доставлено раньше, чем указанное в примере.

ID 43533. Счастливая последовательность
Темы: Одномерные массивы   

У Пети есть последовательность A неотрицательных целых чисел длины n. Числа в последовательности пронумерованы, начиная с нуля. Петя считает последовательность счастливой, если четность каждого элемента последовательности совпадает с четностью номера данного элемента. Формально это означает, что если для всех i (0 <= i <= n - 1) выполнено равенство i mod 2 = a[i] mod 2, где x mod 2 - остаток от деления x на 2, то последовательность является счастливой.

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


Входные данные

Программа получает на вход в первой строке целое число n (1 <= n <= 40) — размер последовательности A. Далее следует строка, содержащая n целых чисел a0,a1,…,an−1 (0 <= ai <= 1000) — целые неотрицательные числа последовательности.


Выходные данные

Для каждого набора тестовых данных выведите одно целое число — минимальное количество ходов, за которое можно сделать заданную последовательность A счастливой, или -1, если это сделать невозможно.
 

Примеры
Входные данные Выходные данные
1
4
3 2 7 6
2
2
1
7
-1
3
7
4 9 2 1 18 3 0
0

ID 33721. Выбрать по делителям
Темы: Одномерные массивы   

Дан массив чисел. Необходимо записать в другой массив все трёхзначные числа исходного списка, которые делятся на K и не делятся на M .

Входные данные
Первая строка содержит количество чисел  - N . Во второй строке через пробел задаются N чисел – элементы массива (положительные целые числа не более 105). Гарантируется, что 0 < N <= 10000 . В третьей строке через пробел записаны два числа – K (1 < K <= N) и M (1 <= M <= N ).

Выходные данные
Программа должна вывести в одну строчку все элементы нового массива, разделяя их пробелами. Если ни одного подходящего элемента в массиве не было, программа должна вывести число 0.
 

Примеры
Входные данные Выходные данные
1 6
28 204 103 804 105 106
2 3
106

ID 34987. Юнлинги
Темы: Одномерные массивы   

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

На тренировках по прыжкам в высоту, для оценивания подготовки, выбираются пять лучших юнлингов для оценки. Каждый юнлинг ставит оценку от 1 до 20, после чего одна наименьшая и одна наибольшая оценки отбрасываются.
Вам нужно написать программу, которая будет демонстрировать результаты прыжка.

Она должна выводить пять оценок, которые поставили юнлинги, не меняя их порядка, а затем их сумму, и при этом брать в скобки те оценки, которые не учитываются при расчете суммы.

Входные данные
На вход подается 5 натуральных чисел от 1 до 20, разделенных пробелом.

Выходные данные
Выведите те же числа в том же порядке, взяв в скобки минимальное (а если их несколько – самое левое из них) и максимальное (а если их несколько – самое правое из них) число, а также сумму всех чисел, не взятых в скобки. Все числа (включая сумму) должны быть напечатаны в одной строке и разделены одним пробелом (внутри скобок пробелов быть не должно). Перед суммой должен стоять знак равенства, отделенный слева и справа одним пробелом. Порядок оценок должен быть такой же, как и во входных данных.
 
Примеры
Входные данные Выходные данные
1 1 2 3 4 5 (1) 2 3 4 (5) = 9

ID 34985. Рыцари-джедаи
Темы: Одномерные массивы   

«Звездные войны» - одна из самых известных фантастических саг, снятая Джорджем Лукасом, которая включает в себя 6 фильмов. Кроме фильмов, снято уже огромное количество сериалов, мультфильмов и игр.
Главные герои саги  -  рыцари-джедаи, которые управляют сверхъестественной силой и ловко орудуют световыми мечами.
Во вселенной «Звездных войн» джедаи возникли примерно за 25 тысяч лет до событий, описываемых в классической кинотрилогии. Они – звездные рыцари, защитники мира и справедливости в «очень далекой галактике». Свои способности они используют для защиты себя и других, но никогда – для нападения. Суть их жизни – в служении другим. Суть их пути – самосовершенствование через познание и каждодневную тренировку.

Для эффективности тренировки, Верховный Совет придумал следующее, чтобы как-то зарегулировать планы тренировок джедаев, велел он указать определенные дни, и в эти дни устраивать боевые тренировки, а в остальные дни медитировать.
Собрал Верховный Совет всех Учителей и приказал подготовить список дней, в которые можно устраивать боевые тренировки. Список необходимо было предоставить на N дней вперед. 

Но вот незадача: каждый Учитель подготовил список, да еще и с указанием - какой вид боевой тренировки проводить. И у всех Учителей тренировки оказались важные, но у всех — разные! Верховный Совет решил объединить предложения всех Учителей! Если какой-то день есть в списке хотя бы одного Учителя, то в этот день проводится боевая тренировка.

Только одна проблема осталась: некоторые дни оказались в списках сразу у нескольких Учителей. Было решено перенести некоторые боевые тренировки на более поздние дни, так, чтобы в каждый день получалась только одна боевая тренировка, и переносы были бы, как можно короче.

Пусть, например, четыре Учителя сразу предложили сделать 5-й день - днем  боевой  тренировки. Тогда перенесем три из этих четырех дней 6, 7 и 8 — так, что днями боевой тренировки будут дни с 5 по 8, включительно. А если оказывается, что, например, день 7 тоже предложен в качестве боевой тренировки кем-нибудь из Учителей, то перенесем этот день еще дальше — на день 9.

Напишите программу, которая, зная предложения Учителей, определит, какие дни будут днями боевой тренировки, а какие днями медитации. Не забывайте, что  дни боевой тренировки можно переносить только на более поздние дни; на более ранние переносить нельзя.


Входные данные
В первой строке задается одно число N — количество дней, на которые Верховный Совет хочет запланировать тренировки. Во второй строке -  N неотрицательных целых чисел - для каждого дня указано, сколько Учителей предложили считать его днем боевой тренировки. Гарантируется, что \(1<=N<=100000\), и что сумма всех чисел во второй строке не превосходит 100000.

Выходные данные
Выведите одну строку, состоящую из символов “+” или “-”. “+” обозначайте день боевой тренировки, “-” -  медитации. Выведите, как минимум, N символов - по одному для каждого из дней, на которые проводится планирование. Но если боевые тренировки приходится переносить на дни после N-го (что допустимо), то выведите больше символов - до последнего дня боевой тренировки. Символы разделяйте пробелами.
 
Примеры
Входные данные Выходные данные
1 5
0 3 0 0 0
- + + + -
2 10
0 4 0 2 0 0 0 0 1 0
- + + + + + + - + -
3 3
0 3 0
- + + +

ID 34986. Импульс силы
Темы: Одномерные массивы   

В своих действиях джедаи используют Силу. Она описывается как энергетическое поле, которое создают все живые существа, которое связывает воедино все в галактике. По сути, это аналог китайской концепции ци. Есть у Силы и научная основа: в процессе «клеточного дыхания» происходят химические реакции, генерирующие электрический импульс, хоть и микроскопический.
Энергетический импульс можно измерить числом от 1 до 9. У каждого джедая, в зависимости от его силы и опыта, свой энергетический импульс. Энакин Скайуокер решил подсчитать, сколько джедаев с определенным энергетическим импульсом.
Напишите программу, которая автоматизирует данный подсчет.

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

Выходные данные
Подсчитайте во входной последовательности количество единиц, количество двоек, количество троек и т.д. и выдайте результат. В выходных данных всегда должно быть 9 чисел.
 

Пример
Входные данные Выходные данные
1 1 1 4 1 5 8 6 3 5 1 0 4 0 1 1 2 1 0 1 0

ID 34988. Прыжки с переворотом
Темы: Одномерные массивы   

С группой юнлингов занимается один джедай, но когда они переходят в ранг падаванов, то к ним прикрепляется, индивидуально, один мастер-джедай. Заметное отличие падавана - это косичка. Она заплеталась за правым ухом, а остальные волосы были аккуратно уложены.

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

Жили и тренировались падаваны не только в храме, но и в специальных академиях и звездных кораблях.

Бывали у падаванов и групповые тренировки. На групповых тренировках отрабатывались прыжки с переворотом.  Смысл тренировки заключался в следующем: необходимо было в прыжке перевернуться и поменять свое положение таким образом, чтобы шеренга всех падаванов выстраивалась в обратном порядке.

Пронумеруем всех падаванов в шеренге натуральными числами 1, 2, 3, ..., N (\(1 <= N <= 1000\)).
Напишите программу, которая определит итоговое расположение падаванов после двух прыжков с переворотом. Сначала прыжки с переворотом делаются от падавана с номером A до падавана с номером B, а затем от C до D (\(A<B\)\(C < D\); \(1 <= A, B, C, D <= N\)).


Входные данные 
Вводятся натуральные числа числа NABCD.

Выходные данные 
Требуется вывести полученную последовательность.
 
Примеры
Входные данные Выходные данные
1 9 2 5 6 9 1 5 4 3 2 9 8 7 6
2 9 3 6 5 8 1 2 6 5 8 7 3 4 9

ID 34990. Приращение силы
Темы: Одномерные массивы   

«Да пребудет с тобой Сила» — знаменитая фраза, которую, наверняка, слышали даже те, кто не интересуется вселенной «Звёздных войн». 
Способность индивидуума управлять Силой напрямую зависит от уровня мидихлориан в его организме.

Пусть мы знаем силу каждого из N джедаев: A1,...,AN.
Обозначим максимальное и минимальное значение силы, как max(A) и min(A), соответственно.
Вычислим общую силу всех джедаев SS=A1+A2+…+AN.
Заменим силу каждого джедая на разницу S и этого элемента: Ai:=S-Ai, \(1<=i<=N\).
Такое преобразование назовем Приращением силы.

Напишите программу, которая по массиву B, полученному в результате K–кратного Приращения силы к некоторому списку сил джедаев, вычислит разность max(A)-min(A).

Входные данные 
Первая строка содержит целые числа N и K, где N — количество элементов массива B (\(2 <= N <= 10000\)), а K — количество применений операции Приращения силы к начальному массиву A\(1 <= K <= 100\)
Вторая строка содержит N элементов массива B. Элементы массива B — целые числа, принадлежащие диапазону от -2 000 000 000 до 2 000 000 000.

Выходные данные 
Единственная строка выходного файла должна содержать целое число - разность max(A) и min(A).
 
Пример
Входные данные Выходные данные
1 4 2
45 52 47 46
7

ID 34989. Кегельбан
Темы: Одномерные массивы   

Хотите стать джедаем? Тогда приводим для вас кодекс рыцарей-миротворцев:
Нет волнения — есть покой
Нет невежества — есть знание
Нет страсти — есть безмятежность
Нет хаоса — есть гармония
Нет смерти — есть Сила

Кроме постоянных тренировок, падаваны все-таки имеют время на отдых и некоторые развлечения. Одно из любимых - это игра в Кегельбан.

N кеглей выставляют в один ряд, занумеровав их слева направо числами от 1 до N. Затем по этому ряду бросают K шаров, при этом i-й шар сбивает все кегли с номерами от li до ri включительно.
Ваша задача - определить, какие кегли остались стоять на месте.

Входные данные 
Программа получает на вход количество кеглей N и количество бросков K. Далее идет K пар чисел liri, при этом \(1<=l_i<=r_i<=N\).

Выходные данные 
Программа должна вывести последовательность из N символов, где j-й символ есть “I”, если j-я кегля осталась стоять, или “.”, если j-я кегля была сбита.
 
Пример
Входные данные Выходные данные
1 10 3
8 10
2 5
3 6
I.....I...

ID 37035. Повернем массив
Темы: Одномерные массивы   

Дана квадратная матрица. Поверните его на 90 градусов по часовой стрелке. Результат запишите в этот же массив, вспомогательный массив использовать нельзя.

Формат входных данных
Вводится одно число n - размер квадратного массива (n <=10), а затем сам массив размером nхn.

Формат выходных данных
Выведите матрицу, получившуюся после преобразования.

ID 44714. Невезучий морской бой
Темы: Одномерные массивы   

Сегодня Максиму не повезло в игре в "Морской бой". Играя с соседом по парте, он ни разу не попал ни в один корабль противника. Игра продолжалась до тех пор, пока Марь Иванна не увидела, что ребята заняты на уроке не тем, чем надо.  Игру пришлось закончить досрочно победой соседа. Прийдя домой, Максим решил определить, какой максимальной длины корабль мог быть у противника. 
Но теперь его отвлекла мама и позвала ужинать. Он ушел ужинать и попросил вас помочь ему найти ответ. 

Морской бой представляет из себя игру на клетчатом поле размером 10 x 10 клеток. Максим успел прислать вам поле прошедшей игры. На поле отмечены клетки, в которые Максим уже стрелял. На поле можно размещать корабли любого размера, но обязательное условие, чтобы корабль был прямоугольным с шириной, равной 1. Располагать корабль разрешается либо горизонтально либо вертикально.


Входные данные

На вход программа получает 10 строк по 10 чисел в каждой, числа разделены пробелами. Число 1 означает, что в соответствующую клетку стреляли, число 0 – что в клетку не стреляли.
(Гарантируется, что на поле есть хотя бы одна небитая клетка.)


Выходные данные

Выведите ответ  – максимальную возможную длину корабля.
 

Примеры
Входные данные Выходные данные
1
0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 1 0
0 0 1 0 0 0 0 1 0 0
0 0 0 1 0 0 1 0 0 0
0 0 0 0 1 1 0 0 0 0
0 0 0 0 1 1 0 0 0 0
0 0 0 1 0 0 1 0 0 0
0 0 1 0 0 0 0 1 0 0
0 1 0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 0 0 0
10

ID 38715. Печаль Громозеки
Темы: Одномерные массивы    Использование сортировки    Алгоритмы сортировки   

Громозека имеет последовательность целых чисел A длины N. Он свободно выбирает целое число b. Здесь ему станет грустно, если Ai и b+i находятся далеко друг от друга. Точнее, печаль Громозеки рассчитывается следующим образом:
\(abs(A_1-(b+1))+abs(A_2-(b+2))+...+abs(A_N-(b+N))\).
Здесь \(abs(x) \)- это функция, которая возвращает абсолютное значение x. Найдите минимально возможную печаль Громозеки.

Входные данные
В первой строке записано целое число N  (\(1<=N<=2 \cdot 10^5\)). Во второй строке записано N целых чисел Ai (\(1<=A_i<=10^9\)).

Выходные данные
Выведите на экран минимально возможную печаль Громозеки.
 

Примеры
Входные данные Выходные данные Пояснение
1 5
2 2 3 5 5
2 Если мы выберем b = 0, печаль Громозеки будет \(\) 
abs (2- (0 + 1)) + abs (2-(0 + 2))+ abs (3-(0 + 3)) + abs (5- (0 + 4)) + abs(5-(0 + 5)) = 2.
Любой другой выбор b не делает печаль Громозеки меньше 2, поэтому ответ - 2.
2 9
1 2 3 4 5 6 7 8 9
0  
3 6
6 5 4 3 2 1
18  
4 7
1 1 1 1 2 3 4
6  

ID 43349. Секретная последовательность
Темы: "Два указателя"    Одномерные массивы    Задача на реализацию   

Алиса оставила для своего отца профессора Селезнева секретную последовательность a[1..n]. Чтобы ее не прятать, она решила написать ее на самом видном месте, но в другом порядке следования чисел. Профессор Селезнев знает, что Алиса переписала секретную последовательность в следующем виде:

  • первым числом слева записано число a1;
  •  первым числом справа записано число a2;
  • вторым числом слева (после a1) записано число a3;
  • вторым числом справа (то есть перед числом a2) записано число a4;
  • все остальные числа записаны аналогичным образом.

То есть, если бы секретная последовательность была a = [1, 2, 3, 4, 5, 6], то профессор бы увидел следующую последовательность [1, 3, 5, 6, 4, 2]. Профессор Селезнев очень торопился и успел только сохранить в компьютер последовательность, которую увидел. Напишите программу, которая покажет профессору исходную секретную последовательность.



Входные данные
Первая строка содержит размер последовательности n (1 <= n <= 300), записанной Алисой для своего отца. Вторая строка содержит n чисел ai (1 <= ai <= 109) - саму последовательность.

Выходные данные
Выведите исходную последовательность, которую Алиса выписывала для отца.
 
 
Примеры
Входные данные Выходные данные
1

6
1 3 5 6 4 2

1 2 3 4 5 6
2 1
23
23

 

ID 47668. Слияние списков
Темы: Одномерные массивы    "Два указателя"   

У Максимуса есть коллекция волшебных амулетов, каждый из которых обладает своей магической силой. Список имеющихся у него амулетов отсортирован в порядке неубывания магической силы. Вернувшись из очередного путешествия, Максимус составил список новых амулетов, предварительно отсортировав их по невозрастанию магической силы. Теперь у него два отдельных списка и он хочет объединить их в один упорядоченный по неубыанию список. 
Он хочет сделать это как можно быстрее. Помогите ему отсортировать два этих списка. Максимус просит вас написать программу, которая будет работать за O(len(A)+len(B))
 

Входные данные
Программа получает на вход два неубывающих списка, каждый в отдельной строке.

Выходные данные
Программа должна вывести последовательность неубывающих чисел, полученных объединением двух данных списков.
 
Примеры
Входные данные Выходные данные
1 1 5 7
2 4 4 5
1 2 4 4 5 5 7

ID 47488. Списочное выражение - 1.2
Темы: Одномерные массивы   

Программа получает на вход строку, состоящую из слов. Каждое слово разделено одним пробелом. Все слова из этой строки записываются в список my_list.
Дополните приведенный код, используя списочное выражение так, чтобы получить новый список, содержащий слова исходного списка, где у каждого элемента удалён последний символ.

ID 47489. Списочные выражения - 1.3
Темы: Одномерные массивы   

Программа получает на вход строку, состоящую из слов. Каждое слово разделено одним пробелом. Все слова из этой строки записываются в список my_list.
Дополните приведенный код, используя списочное выражение так, чтобы получить новый список, содержащий слова исходного списка, где у каждого элемента удален каждый нечетный символ (индексация символов в словах начинается с 0).

ID 47491. Списочные выражения - 1.4
Темы: Одномерные массивы   

Программа получает на вход строку, состоящую из слов. Каждое слово разделено одним пробелом. Все слова из этой строки записываются в список my_list.
Дополните приведенный код, используя списочное выражение так, чтобы получить новый список, содержащий слова исходного списка, где у каждого элемента удален каждый четный символ (индексация символов в словах начинается с 0).

ID 47492. Списочные выражения - 2.1
Темы: Одномерные массивы   

Программа получает на вход строку, состоящую из слов. Каждое слово разделено одним пробелом. Все слова из этой строки записываются в список my_list.
Дополните приведенный код, используя списочное выражение так, чтобы получить новый список, содержащий слова исходного списка с длиной не менее 5 символов.

ID 47493. Списочные выражения - 2.2
Темы: Одномерные массивы   

Программа получает на вход строку, состоящую из слов. Каждое слово разделено одним пробелом. Все слова из этой строки записываются в список my_list.
Дополните приведенный код, используя списочное выражение так, чтобы получить новый список, содержащий слова исходного списка с длиной не более 10 символов.

ID 47494. Списочные выражения - 2.3
Темы: Одномерные массивы   

Программа получает на вход строку, состоящую из слов. Каждое слово разделено одним пробелом. Все слова из этой строки записываются в список my_list.
Дополните приведенный код, используя списочное выражение так, чтобы получить новый список, содержащий слова исходного списка с четным числом символов.

ID 47504. Списочные выражения - 4.2
Темы: Одномерные массивы   

Программа получает на вход строку s, содержащую как буквенные символы так и цифровые,
Дополните приведенный код, используя списочное выражение так, чтобы получить новый список, содержащий только не цифровые символы данной строки s.

ID 47495. Списочные выражения - 2.4
Темы: Одномерные массивы   

Программа получает на вход строку, состоящую из слов. Каждое слово разделено одним пробелом. Все слова из этой строки записываются в список my_list.
Дополните приведенный код, используя списочное выражение так, чтобы получить новый список, содержащий слова исходного списка с нечетным числом символов.

ID 47497. Списочные выражения - 3.1
Темы: Одномерные массивы   

Программа получает на вход натуральное число n.
Дополните приведенный код, используя списочное выражение так, чтобы получить новый список, содержащий квадраты всех целых чисел от 1 до n.

ID 47499. Списочные выражения - 3.2
Темы: Одномерные массивы   

Программа получает на вход натуральное число n.
Дополните приведенный код, используя списочное выражение так, чтобы получить новый список, содержащий удвоенные значения всех целых чисел от 1 до n.

ID 47500. Списочные выражения - 3.3
Темы: Одномерные массивы   

Программа получает на вход натуральное число n.
Дополните приведенный код, используя списочное выражение так, чтобы получить новый список, содержащий третью степень всех целых чисел от 1 до n.

ID 47502. Списочные выражения - 3.4
Темы: Одномерные массивы   

Программа получает на вход натуральное число n.
Дополните приведенный код, используя списочное выражение так, чтобы получить новый список, содержащий последние цифры всех целых чисел от n до n*n.

ID 47503. Списочные выражения - 4.1
Темы: Одномерные массивы   

Программа получает на вход строку s, содержащую как буквенные символы так и цифровые,
Дополните приведенный код, используя списочное выражение так, чтобы получить новый список, содержащий только цифровые символы данной строки s.

ID 47570. Перестановка двух элементов - 1
Темы: Одномерные массивы   

В числовом массиве из N чисел переставьте местами элемент с индексом first с элементом, который имеет максимальное значение. Если максимальных элементов несколько, то необходимо взять первый из них (максимальный элемент с меньшим индексом). Индексация элементов начинается с 0.

Входные данные
В первой строке записаны через пробел два числа N - количество элементов одномерного массива и число first. Во второй строке записаны N чисел numsi - элементы массива.

Ограничения
1 <= N <= 105
-109 <= numsi <= 109
0 <= first < N


Выходные данные
Выведите в одну строку измененный массив, разделяя элементы одним пробелом.
 
 

Примеры
Входные данные Выходные данные
1
5 2
1 3 2 -1 0
1 2 3 -1 0

ID 47571. Перестановка двух элементов - 2
Темы: Одномерные массивы   

В числовом массиве из N чисел переставьте местами элемент с индексом first с элементом, который имеет минимальное значение. Если минимальных элементов несколько, то необходимо взять первый из них (минимальный элемент с меньшим индексом). Индексация элементов начинается с 0.

Входные данные
В первой строке записаны через пробел два числа N - количество элементов одномерного массива и число first. Во второй строке записаны N чисел numsi - элементы массива.

Ограничения
1 <= N <= 105
-109 <= numsi <= 109
0 <= first < N


Выходные данные
Выведите в одну строку измененный массив, разделяя элементы одним пробелом.
 
 

Примеры
Входные данные Выходные данные
1
5 2
1 -2 2 -1 0
1 2 -2 -1 0

ID 47572. Перестановка двух элементов - 2
Темы: Одномерные массивы   

В числовом массиве из N чисел переставьте местами элемент с индексом first с элементом, который имеет минимальное значение. Если минимальных элементов несколько, то необходимо взять последний из них (минимальный элемент с большим индексом). Индексация элементов начинается с 0.

Входные данные
В первой строке записаны через пробел два числа N - количество элементов одномерного массива и число first. Во второй строке записаны N чисел numsi - элементы массива.

Ограничения
1 <= N <= 105
-109 <= numsi <= 109
0 <= first < N


Выходные данные
Выведите в одну строку измененный массив, разделяя элементы одним пробелом.
 
 

Примеры
Входные данные Выходные данные
1
5 2
1 -2 2 -1 -2
1 -2 -2 -1 2

ID 47574. Перестановка двух элементов - 5
Темы: Одномерные массивы   

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


Входные данные
В первой строке записано число N - количество элементов одномерного массива. Во второй строке записаны N чисел numsi - элементы массива.

Ограничения
1 <= N <= 105
-109 <= numsi <= 109


Выходные данные
Выведите в одну строку измененный массив, разделяя элементы одним пробелом.
 
 

Примеры
Входные данные Выходные данные
1
5
1 -2 -1 2 -2
1 2 -1 -2 -2

ID 1874. Инверсия между двумя элементами
Темы: Одномерные массивы    Работа с элементами (вставка, удаление, сдвиг)   

Дан одномерный массив размерностью N (2 <= N <= 20). Выполните инверсию элементов находящихся между максимальным и минимальным значениями (максимальное и минимальное значения должны остаться на своих местах).

Входные данные
В первой строке содержится число N - количество элементов массива. Вторая строка содержит значения элементов массива. Все элементы массива различные.

Выходные данные
Необходимо вывести на экран результирующий массив.

 

Примеры
Входные данные Выходные данные
1 4
1 2 3 4
1 3 2 4