Задача 1. Удаление элемента из массива

Дан массив. Требуется удалить из него элемент, стоящий на месте номер B, сдвинув все последующие элементы влево.

Входные данные
Записано сначала число N — количество элементов массива (2≤N≤100),
затем N чисел из диапазона Int — элементы массива, а затем число B (1≤B≤N).

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

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

Пример вводаПример вывода
5
1 3 5 6 7
2
1 5 6 7

Задача 2. Вставка элемента в массив

Дан массив. Требуется вставить в него на место номер B элемент, равный C, сдвинув все последующие элементы (включая элемент, стоящий на B-ом месте) вправо.

Входные данные
Записано сначала число N — количество элементов массива (2≤N≤100),
затем N чисел из диапазона Int — элементы массива, затем число B (1≤B≤N) и число C (из диапазона Int).

Выходные данные
Выведите N+1 число — элементы массива с вставленным элементом.

Примечание

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

Пример вводаПример вывода
5
1 3 5 6 7
2 10
1 10 3 5 6 7

Задача 3. Циклический сдвиг вправо

Напишите программу, которая циклически сдвигает элементы массива вправо (1-й элемент становится 2-м, 2-й становится 3-м, …, последний становится 1-м, то есть массив {3, 5, 7, 9} превращается в массив {9, 3, 5, 7}).

Входные данные
Сначала задано число N — количество элементов в массиве. Далее через пробел записаны N чисел — элементы массива.

Выходные данные
Необходимо вывести элементы получившегося массива.

Пример вводаПример вывода
3
1 2 3
3 1 2

Задача 4. Карусель

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

Вводятся два числа — N (1≤N≤100) и T (0≤T≤30000).

Выведите N чисел — состояние массива через T секунд.

Пример вводаПример вывода
5 3
3 4 5 1 2

Задача 5. Числообменник

В начальный момент в массиве записаны по порядку числа от 1 до N (i-ое число — на i-ом месте). С массивом проделывают последовательно следующую операцию: берут два числа, стоящих на местах A и B, и меняют их местами. Требуется напечатать массив после выполнения этих операций.

Входные данные
Записано сначала число N (2≤N≤100). Далее идет число K — количество операций обмена (0≤K≤10000). Далее идет K пар чисел — номера мест элементов, обмен которых происходит.

Выходные данные
Выведите элементы массива после выполнения этих операций.

Пример вводаПример вывода
10
2
1 3
3 5
3 2 5 4 1 6 7 8 9 10

Задача 6*. Разложение на простые множители

Напишите программу, которая по данному натуральному числу n выводит все его простые натуральные делители с учетом кратности.

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

Программа получает на вход одно число n, не превышающее 2*109.
Замечание. Для работы с такими числами используйте тип данных long.

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

Программа должна вывести все простые натуральные делители числа n с учетом кратности.

Пример

132 ---> 2 2 3 11

Задача 7*. «Задача Иосифа Флавия»

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

В нашем варианте мы начнём с того, что выстроим в круг N человек, пронумерованных числами от 1 до N, и будем исключать каждого k-ого до тех пор, пока не уцелеет только один человек. (Например, если N=10, k=3, то сначала умрет 3-й, потом 6-й, затем 9-й, затем 2-й, затем 7-й, потом 1-й, потом 8-й, за ним — 5-й, и потом 10-й. Таким образом, уцелеет 4-й.)

Задача: определить номер уцелевшего.

Входные данные: Вводятся числа N и k.
Ограничения: 1≤N≤500, 1≤k≤100.

Выходные данные: Программа должна выдавать номер уцелевшего человека.

Пример:

10 3 --->   4

Задача 2-1. Сортировка

Задано сначала число N (1≤N≤100), а затем N целых чисел, по модулю не превышающих 1000.

Выведите эти N чисел в порядке неубывания.

Пример

5
3 1 2 4 2  ---> 1 2 2 3 4

Задача 2-2. Сортировка по последней цифре

Дана последовательность чисел. Нужно упорядочить эти числа по возрастанию последней цифры, а при равенстве последних цифр — по возрастанию (точнее, по неубыванию) самих чисел.

Вводится сначала число N (1≤N≤100), а затем сами числа — натуральные числа не превышающие 32000.
Выведите последовательность чисел, упорядоченную так, как указано в условии.

Пример

7
12 15 43 13 20 1 15 --->  20 1 12 13 43 15 15

Задача 2-3. Результаты олимпиады

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

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

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

Пример

5
100 312 0 312 500 --->5 2 4 1 3

Задача 2-4 «Сортировка времени»

Вводится сначала число N (1≤N≤100), а затем N моментов времени. Каждый момент времени задается 3 целыми числами — часы (от 0 до 23), минуты (от 0 до 59) и секунды (от 0 до 59).

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

Пример вводаПример вывода
4
10 20 30
7 30 00
23 59 59
13 30 30
7 30 0
10 20 30
13 30 30
23 59 59

Задача 2-5*. «Минимальное число» (Окружная олимпиада, 2007 год)

Дано натуральное четырехзначное число. Найдите минимальное натуральное четырехзначное число, состоящее из тех же цифр, что и заданное. Заметим, что четырехзначные числа не могут начинаться с нуля.

Пример

1513 --->1135