原题题目
代码实现(首刷自解)
class Solution {
public:int minSwaps(string s) {
int retone = 0,retzero = 0,one = 0,zero = 0;for(int i=0;i<s.size();++i){
if(s[i] == '0'){
if(i%2) ++retzero;else ++retone; ++zero; } else{
if(i%2) ++retone;else ++retzero;++one;}}if(abs(zero-one) > 1) return -1;if(zero == one) return min(retzero/2,retone/2);else if(zero > one) return retzero/2;else return retone/2;}
};