AcWing 1208. 翻硬币(水题)(递推)

题目
思路:从左往右进行比较,不同则进行翻转。因为必有解,比到倒数第二位就可以了

代码:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;

const int N=110;


int main()
{
    
    
	string s1,s2;
	cin>>s1>>s2;
	int n=0;
	for(int i=0;i<s1.size()-1;i++)//因为一定有解,比较到倒数第二位就可以了 
	{
    
    
		if(s1[i]!=s2[i])
		{
    
    
			n++;
			if(s1[i]=='o')
			{
    
    
				s1[i]='*';
			}
			else
			{
    
    
				s1[i]='o';
			}
			if(s1[i+1]=='o')
			{
    
    
				s1[i+1]='*';
			}
			else
			{
    
    
				s1[i+1]='o';
			}
		}
	}
	cout<<n;
	return 0;
} 

猜你喜欢

转载自blog.csdn.net/qq_47874905/article/details/114933873
今日推荐