首页 > 技术文章 > 剪格子

mmmelodyyy 2021-04-17 23:44 原文

#include<iostream>
#include<algorithm>
using namespace std;
int n;
string ins1,ins2;
int diff[1010];
int x = -1,y,sum;
int main(){
	cin>>ins1>>ins2;
	n = ins1.length();
	for(int i = 0; i < n; i++){
		if(ins1[i] != ins2[i]){
			diff[i] = 1;
			sum++;
			if(x == -1) x = i;
		}else{
			diff[i] = 0;
		}
	}
	for(int j = n - 1; j >= 0; j--){
		if(diff[j] == 1){
			y = j;
			break;
		}
	}
	int z = x,ans = 0;
	while(z <= y){
		if(diff[z] == 1){
			diff[z] = 0;
			if(diff[z+1] == 0) diff[z+1] = 1;
			else diff[z+1] = 0;
			ans++;
		}
		z++;
	}
	cout<<ans<<endl;
	return 0;
}

推荐阅读