Олимпиадный тренинг

Задача . Сортировка (пузырьком с флажком)


Задача

Темы:

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

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

Первая строка содержит размер массива N . Во второй строке через пробел задаются N чисел – элементы массива. Гарантируется, что 0 < N ≤ 1000 .

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

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



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

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
Комментарий учителя