2025/26, Кружок для начинающих, Сортировки 📈📈📉📈

A-1: Максимальный - вперед

Требуется поменять местами первый элемент массива с максимальным.

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

В первой строке вводится одно натуральное число, не превосходящее \(1000\) – размер массива. Во второй строке задаются \(N\) чисел – элементы массива (целые числа, не превосходящие по модулю \(1000\)).

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

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

Примеры

ВводВывод
5
1 2 3 4 5
5 2 3 4 1
5
5 4 3 2 1
5 4 3 2 1

B-1: Сортировка выбором максимума

Требуется отсортировать массив по неубыванию методом "выбор максимума".

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

В первой строке вводится одно натуральное число, не превосходящее \(1000\) – размер массива. Во второй строке задаются \(N\) чисел – элементы массива (целые числа, не превосходящие по модулю \(1000\)).

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

Вывести получившийся массив.

Пример

ВводВывод
2
3 1
1 3

C-1: Пузырьковая сортировка

Требуется отсортировать массив по неубыванию методом "пузырька".

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

В первой строке вводится одно натуральное число, не превосходящее \(1000\) – размер массива. Во второй строке задаются \(N\) чисел – элементы массива (целые числа, не превосходящие по модулю \(1000\)).

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

Вывести получившийся массив.

Пример

ВводВывод
2
3 1
1 3

D-1: Сортировка пузырьком

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

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

На первой строке дано число \(N\) \((1 \leq N \leq 1000)\) – количество элементов в массиве. На второй строке – сам массив. Гарантируется, что все элементы массива различны и не превышают по модулю \(10^9\).

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

Выведите одно число – количество обменов пузырьковой сортировки.

Примеры

ВводВывод
5
1 2 3 4 5
0
5
5 4 3 2 1
10

E-1: Сортировка слиянием

Отсортируйте данный массив, используя сортировку слиянием.

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

Первая строка входных данных содержит количество элементов в массиве \(N\) (\(N \leq 10^5\)). Далее идет \(N\) целых чисел, не превосходящих по абсолютной величине \(10^9\).

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

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

Пример

ВводВывод
2
3 1
1 3

F-1: Быстрая сортировка

Отсортируйте данный массив, используя быструю сортировку.

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

Первая строка входных данных содержит количество элементов в массиве \(N\) (\(N \leq 10^5\)). Далее идет \(N\) целых чисел, не превосходящих по абсолютной величине \(10^9\).

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

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

Пример

ВводВывод
2
3 1
1 3

G-2: Объединение последовательностей

Даны две бесконечных возрастающих последовательности чисел \(A\) и \(B\). \(i\)-ый член последовательности \(A\) равен \(i^2\). \(i\)-ый член последовательности \(B\) равен \(i^3\).

Требуется найти \(C_x\), где \(C\) – возрастающая последовательность, полученная при объединении последовательностей \(A\) и \(B\). Если существует некоторое число, которое встречается и в последовательности \(A\) и в последовательности \(B\), то в последовательность \(C\) это число попадает в единственном экземпляре.

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

В единственной строке входного файла дано натуральное число \(x\) \((1 \leq x \leq 10^7)\).

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

В выходной файл выведите \(C_x\).

Примеры

ВводВывод
1
1
2
4
4
9

H-2: Разные

Дано \(N\) чисел, требуется выяснить, сколько среди них различных.

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

В первой строке дано число \(N\) – количество чисел. \((1 \leq N \leq 100000)\) Во второй строке даны через пробел \(N\) чисел, каждое не превышает \(2\cdot10^9\) по модулю.

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

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

Пример

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

I-2: Экспедиция

Месклиниты собрались в экспедицию на край света. У них есть корабль, состоящий из \(N\) × \(M\) плотиков, связанных между собой. У каждого плотика есть своя грузоподъемность, а у каждого месклинита – своя масса. На каждом плотике может находиться не более одного месклинита. Если грузоподъемность выбранного плотика меньше массы месклинита, то бедный месклинит утонет при посадке.

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

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

В первой строке даны числа \(N\) и \(M\) \((1 \leq N, M \leq 40)\). В каждой из последующих \(N\) строк содержится по \(M\) чисел, обозначающих грузоподъемность соответствующего плотика. В \((N+2)\)-ой строке находится число \(K\) \((1 \leq K \leq 2000)\) – количество месклинитов. В \((N+3)\)-ей строке содержатся \(K\) чисел, \(i\)-ое из которых – масса \(i\)-ого месклинита. Все массы месклинитов и грузоподъемности плотиков – натуральные числа, не превышающие \(10^9\).

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

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

Пример

ВводВывод
3 2
5 10
7 5
5 5
6
9 5 3 5 12 10
4

J-2: Результаты олимпиады

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

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

На первой строке дано число \(N\) \((1 \leq N \leq 1000)\) – количество участников. На каждой следующей строке даны идентификационный номер и набранное число баллов соответствующего участника. Все числа во входном файле не превышают \(10^5\).

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

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

Примеры

ВводВывод
3
101 80
305 90
200 14
305 90
101 80
200 14
3
20 80
30 90
25 90
25 90
30 90
20 80

K-2: Обувной магазин

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

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

Сначала вводится размер ноги покупателя (обувь меньшего размера он надеть не сможет), затем количество пар обуви в магазине и размер каждой пары. Размер — натуральное число, не превосходящее 100, количество пар обуви в магазине не превосходит 1000.

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

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

Примеры

ВводВывод
60
2
60 63
2
26 
5
30 35 40 41 42
3