Эта задача является упражнением для изучения идеи, лежащей в основе знаменитого алгоритма Сортировки Пузырьком - который, предположительно, вы напишете чуть позже (или уже написали).
Пусть нам дан массив целых чисел, и мы проходим по парам соседних элементов от начала. Будем обменивать членов каждой пары если первый из них больше второго (т.е.они нарушают порядок).
Например, пусть у нас маленький массив из чисел 1 4 3 2 6 5
- отметим какие пары подвергаются перестановке, а какие нет:
(1 4) 3 2 6 5 - пропускаем
1 (4 3) 2 6 5 - обмениваем
1 3 (4 2) 6 5 - обмениваем
1 3 2 (4 6) 5 - пропускаем
1 3 2 4 (6 5) - обмениваем
1 3 2 4 5 6 - закончили
Эта операция продвигает элементы покрупнее к концу массива, в то время как меньшие элементы сдвигаются
немного к началу.
Что особенно важно: наибольший элемент обязательно уходит в самую последнюю позицию.
Входные данные содержат последовательность элементов массива, все целые положительные.
После них следует -1
означающее конец (это значение не нужно включать в массив).
Ответ должен содержать два значения - количество осуществленных перестановок
и контрольную сумму массива после произведенной операции.
Контрольную сумму считаем как в задаче Контрольная Сумма.
Пример:
входные данные:
1 4 3 2 6 5 -1
ответ:
3 5242536