为什么没AC?可能你只差一个标记
查看原帖
为什么没AC?可能你只差一个标记
1573746
wyxing楼主2025/1/8 22:59

刚开始用erase,但erase的向前填补特性给我整了个92加两个RE一个WA,后面转用标记就过了。

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int n,sum=0;
	string s;
	cin>>n>>s;
	//数据准备 
	
	for(int i=0;i<s.size()-1;i++)
	{
		if(s[i]=='V'&&s[i+1]=='K')
		{
			sum++;
			s[i]='0',s[i+1]='0';//标记排除就解决了
		}
	}
	
	for(int i=0;i<s.size()-1;i++)
	{
		if(s[i]=='V'&&s[i+1]=='V'||s[i]=='K'&&s[i+1]=='K')
		{
			sum++;
			break;//只改一个字符,枚举排列规律,最多也只能加一个VK 
		}
			
	}
	cout<<sum;
	return 0;
}
2025/1/8 22:59
加载中...