问题 3263 --数列排序(sort)

3263: 数列排序(sort)

时间限制: 1 Sec  内存限制: 256 MB
提交: 0  解决: 0
[提交][状态][讨论版][命题人:]

题目描述

给定一个数列 {an} ,这个数列满足 ai != aj (i != j) ,现在要求你把这个数列从小到 大排序,每次允许你交换其中任意一对数,请问最少需要几次交换? 

输入

第一行,正整数 n 。 

接下来,一共 n 个数,用空格分隔开,表示数列 {an} 。 

输出

只有一行,包含一个数,表示最少的交换次数。 

样例输入

8
8 23 4 16 77 -5 53 100


样例输出

5

提示


对于 100% 的数据,有 



n ≤ 10^5



−2^31 ≤ ai ≤2^31 。

来源

[提交][状态]