1878: 最少交换次数
Memory Limit:128 MB
Time Limit:1.000 S
Judge Style:Text Compare
Creator:
Submit:5
Solved:2
Description
给出一个大小为 n的二进制数组 data,你需要通过交换位置,将数组中任何位置 上的 1 组合到一起,并返回所有可能中所需 最少的交换次数。也就是要求编程计算后,使数组 data 中的所有 1 位于相邻位置的最少交换次数。
如示例, data={ 1101101 },则只要将最后一个1交换最前面的一个0,一次交换即可完成。
Input
输入第一行为 n。第二行为 n个二进制数字。数字间空一格。
Output
输出一个正整数,为最少交换次数。
Sample Input Copy
8
1 1 0 1 1 0 0 1
Sample Output Copy
1
HINT
-
1 <= n <= 105