#5240. Problem 3. Balancing Inversions

0

Problem 3. Balancing Inversions

Problem 3. Balancing Inversions

USACO 2019 US Open Contest, Gold

Bessie和Elsie在一个长为2N2N的布尔数组AA上玩游戏(1N1051 \leq N \leq 10^5)。Bessie的分数为AA的前一半的逆序对数量,Elsie的分数为AA的后一半的逆序对数量。逆序对指的是满足A[i]=1A[i]=1以及A[j]=0A[j]=0的一对元素,其中i<ji<j。例如,一段0之后接着一段1的数组没有逆序对,一段XX个1之后接着一段YY个0的数组有XYXY个逆序对。

Farmer John偶然看见了这一棋盘,他好奇于可以使得游戏看起来成为平局所需要交换相邻元素的最小次数。请帮助Farmer John求出这个问题的答案。

输入格式(文件名:balance.in):

输入的第一行包含NN,第二行包含2N2N个为0或1的整数。

输出格式(文件名:balance.out):

输出使得游戏成为平局最少需要的移动次数。

输入样例:


5
0 0 0 1 0 1 0 0 0 1

输出样例:


1

在这个例子中,初始时前一半有11个逆序对,后一半有33个逆序对。交换了第55和第66个数之后,两个子数组均有00个逆序对。

供题:Dhruv Rohatgi