1515 - 冒泡排序
Time Limit : 1 秒
Memory Limit : 128 MB
对于N个数,使用冒泡排序的算法,对其从小到大排序,思路是:
从最后的一对数到最开始的一对数,对于每一对数,如果后者比前者小,则交换它们;
从最后的一对数到最开始的第2对数,对于每一对数,如果后者比前者小,则交换它们;
……
从最后的一对数到倒数第2对数,对于每一对数,如果后者比前者小,则交换它们;
这时就完成了对N个数从小到大的排序。
请根据输入和输出要求完成冒泡排序的算法实现。
Input
第1行一个整数N(N<=50)
第2行有N个用空格隔开的已经打乱次序的正整数(它们都小于N+1)
Output
前面N-1行,每一行输出:
从最后的一对数到最开始的一对数,根据需要实施的交换的次数 + “: " + 完成本轮操作后的列表(逗号隔开)
从最后的一对数到最开始的第2对数,根据需要实施的交换的次数 + “: " + 完成本轮操作后的列表(逗号隔开)
……
从最后的一对数到倒数第2对数,根据需要实施的交换的次数 + “: " + 完成本轮操作后的列表(逗号隔开)
最后一行输出:
finnally: 最后排好序的列表(逗号隔开)
Examples
Input
5 5 3 2 1 4
Output
3: 1,5,3,2,4 2: 1,2,5,3,4 1: 1,2,3,5,4 1: 1,2,3,4,5 finnally: 1,2,3,4,5