小码农

趣味编程-面向每个人的创意编程

最少的交换次数是多少

avatar 2022-12-12 15:29 460次浏览 0 条评论 C++

描述

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

 

输入描述

输入包含多组测试数据。每组输入第一行是一个正整数n(n<500000),表示序列的长度,当n=0时。

接下来的n行,每行一个整数a[i](0<=a[i]<=999999999),表示序列中第i个元素。

 

输出描述

对于每组输入,输出使得所给序列升序的最少交换次数。

 

用例输入 1

5
9
1
0
5
4
3
1
2
3
0

用例输出 1

6
0
发表评论