题目
honoka有一个只有两个键的键盘。一天,她打出了一个只有这两个字符的字符串。当这个字符串里含有?VK
?这个字符串的时候,honoka就特别喜欢这个字符串。所以,她想改变至多一个字符(或者不做任何改变)来最大化这个字符串内VK
出现的次数。给出原来的字符串,请计算她最多能使这个字符串内出现多少次VK
(只有当V
和K
正好相邻时,我们认为出现了VK
)
输入输出格式
输入格式
第一行给出一个数字n,代表字符串的长度。
第二行给出一个字符串s。
输出格式
第一行输出一个整数代表所求答案。
输入输出样例
输入样例
2
VK
输出样例
1
代码
#include<iostream>
using namespace std;
char a[102];
int n;
int main(){
cin>>n;
cin>>a;
int ans=0;
for(int i=0;i<n-1;i++)
{
if(a[i]=='V' && a[i+1]=='K')//将VK的找到,都变为X
{
ans++;
a[i]='X';
a[i+1]='X';
}
}
for(int i=0;i<n-1;i++)
{
if(a[i]!='X' && a[i]==a[i+1])//把VV或者KK的找到,可以一步变成VK
{
ans++;
break;
}
}
cout<<ans;
return 0;
}