游游拿到了一个01串(仅由字符'0'和字符'1'构成的字符串)。游游每次操作可以选择对其中一个字符取反(即1变0,或者0变1),对第 个字符取反的代价为 。(代价从1开始计算,即第一个字母的代价是1) 游游希望最终字符串任意两个相邻的字符都不相同,她想知道花费代价之和的最小值的多少?
输入描述:
一行仅由 '0' 、 '1' 组成的字符串,长度不超过 100000。


输出描述:
一个整数,代表代价之和的最小值。
示例1

输入

11101

输出

2

说明

把第二个字母取反,代价为2。字符串变成10101。
示例2

输入

0111111

输出

13

说明

取反第1、2、4、6个字符,总代价为1+2+4+6=13
加载中...