添加链接描述
可以发现当相邻时交换是最优的,否则那就是改变01最优,因为改变的花费为1
#include<bits/stdc++.h>
using namespace std;
#define int long long
signed main(){
int n,ans=0;
cin>>n;
string a,b;
cin>>a>>b;
for(int i=0;i<a.size();i++){
if(a[i]!=b[i]&&i+1<a.size()&&a[i+1]==b[i]){
//就01交换使相同分三步 第一步开始不一样 第一步当前等于第二步
// cout<<"---"<<i<<"\n";
ans++;
i++;
}
else if(a[i]!=b[i]){
// cout<<i<<"\n";
ans++;
}
}
cout<<ans<<"\n";
return 0;
}