#CF1860D. 平衡字符串

平衡字符串

平衡字符串

  • 时间限制:2 秒
  • 内存限制:256 MiB

题目描述

若一个二进制串中子序列 01 的数量等于子序列 10 的数量,则称它是平衡的。这里的子序列长度恰为二:选择两个下标 i<ji<j,按顺序得到相应字符。

一次操作可以选择字符串中的两个字符并交换。求将给定二进制串变为平衡串所需的最少操作次数。

输入格式

输入仅一行二进制串 ss。

输出格式

输出最少交换次数。

样例输入 1

101

样例输出 1

0

样例输入 2

1000110

样例输出 2

0

样例输入 3

11010

样例输出 3

1

样例输入 4

11001100

样例输出 4

2

数据范围

3≤∣s∣≤1003\le |s|\le100,并保证 ss 可以通过交换字符变为平衡串。

子任务编号 分值 特殊限制
1 20 ∣s∣≤16\lvert s\rvert\le 16
2 40 输入串本身已经平衡
3 无特殊限制