#623. 最少的交换

最少的交换

说明

现在给你一个由n个互不相同的整数组成的序列,现在要求你任意交换相邻的两个数字,使序列成为升序序列,请问最少的交换次数是多少?

输入格式

输入包含多组测试数据。每组输入第一行是一个正整数n(n<500000),表示序列的长度,当n=0时。
接下来的n行,每行一个整数a[i](0<=a[i]<=999999999),表示序列中第i个元素。

输出格式

对于每组输入,输出使得所给序列升序的最少交换次数。
5
9
1
0
5
4
3
1
2
3
0
6
0

Source

算法笔记 入门题-排序