7008 - 交換排序 version 2.0   

Description

排序是一個很常被使用的工具,如何更有效率的完成排序是一件很重要的事情。

交換排序的程式,雖然可以很簡單的使用O(n2) 的演算法來完成,不過我們希望改善他的效率,

因此同樣的題目,我們把數字的個數提升到1000倍!

提示:Merge Sort可以解決這個問題

Input

輸入有多組測試資料。每組測試資料會給定一個N (N<=1,000,000),代表有幾個數字。

下一行會有N個以空白隔開的整數,代表這N個數字。

輸入以EOF結束。

Output

對每組測試資料印出一行"Minimum exchange operations : M",M是最少翻轉的次數。

注意:M可能會超過int範圍

Sample Input  Download

Sample Output  Download

Tags




Discuss