F. 交替字符串

    传统题 1000ms 128MiB

交替字符串

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

说明

给你一个二进制字符串 s ,现需要将其转化为一个 交替字符串 。请你计算并返回转化所需的 最小 字符交换次数,如果无法完成转化,返回 -1 。
交替字符串 是指:相邻字符之间不存在相等情况的字符串。例如,字符串 "010" 和 "1010" 属于交替字符串,但 "0100" 不是。
任意两个字符都可以进行交换,不必相邻 。

输入格式

一个二进制串s。1 <= s.length <= 1000

输出格式

一个数字,表示最少交换次数。

输入输出样例

输入 
111000
输出 1
1
输入 2
010
输出 2
0
输入 3
1110
输出 3
-1

样例



提示

样例1:交换位置 1 和 4:"111000" -> "101010" ,字符串变为交替字符串。

样例2:不用交换

样例:没法变成交替串

202504字符与字符串

未认领
状态
已结束
题目
35
开始时间
2025-3-24 0:00
截止时间
2026-4-7 23:59
可延期
24 小时