题目描述
一个长度为 L 的字符串中被反复贴有 boy
和 girl
两单词,后贴上的可能覆盖已贴上的单词(没有被覆盖的用句点表示),最终每个单词至少有一个字符没有被覆盖。问贴有几个 boy
几个 girl
?
输入格式
一行被反复贴有 boy
和 girl
两单词的字符串。
输出格式
两行,两个整数。第一行为 boy
的个数,第二行为 girl
的个数。
嘶烤
因为boy和girl有可能是就露出1个字符有可能露2个或更多,所以要用这种多个字符一起判断的方法,而不是一个字符判断他是不是b或o或y或g或i或l的方法。
禔碣
#include <bits/stdc++.h>
using namespace std;
int main(){
int l,boy=0,girl=0;
string a;
cin>>a;
l=a.size();
for(int i=0;i<l-2;i++)
boy+=(a[i]=='b'||a[i+1]=='o'||a[i+2]=='y');
for(int i=0;i<=l-3;i++)
girl+=(a[i]=='g'||a[i+1]=='i'||a[i+2]=='r'||a[i+3]=='l');
cout<<boy<<endl<<girl;
return 0;
}