#P1555. 交换次数(swap)

交换次数(swap)

题目描述

给定一个只由 01 构成序列,不断扫描序列,如果发现有一个 1 与一个 0 相邻,且 1 在前,0 在后,就交换它们的位置。不断进行调整直到将所有的 0 都在序列的前一半,所有的 1 都在序列的后一半为止。

请计算需要进行多少次交换才能完成调整。

输入格式

一行,仅由 01 组成的序列

输出格式

一个整数,表示交换次数。

样例数据

010101
3

数据范围

假设 NN 为序列的长度

  • 对于 30%30\% 的数据,1N201\le N \le 20
  • 对于 60%60\% 的数据,1N5001\le N \le 500
  • 对于 100%100\% 的数据,1N3×1051\le N \le 3\times 10^5