Description
calmound一回来就突然离奇失踪了,后来发现原来是偷偷地躲在了妹子群中。你能不能找到他,把他抓回来做题呢?
Input
输入包含多组数据,直到文件EOF结束。每组数据给你一个字符串,字符串长度<=100。仅包含小写字母.
Output
如果字符串中包含calmound则输出Yes,否则输出No
Sample Input
acalmounddasd dacaldasmound
Sample Output
Yes No
解题思路:
指定的字符串不是很长,所以只要找到开头字母,然后剩下的一位一位的比较看是否符合,如果都符合,则Yes。要注意的是,指定的字符串在输入中不一定只有一个,我们只要找出第一个就可以出答案了。
代码:
#include <iostream>
using namespace std;
#include <string>
int main()
{
string a;
while(cin>>a)
{
int t;
t=a.length();
int j,i;
bool prime;
prime=false;
for(i=0;i<t;i++)
{
if(a[i]=='c')//首先找到c的位置,因为只要有c,才有可能包括指定的字符串
{
j=i;
if(a[j+1]=='a')
if(a[j+2]=='l')
if(a[j+3]=='m')
if(a[j+4]=='o')
if(a[j+5]=='u')
if(a[j+6]=='n')
if(a[j+7]=='d')
{
prime=true;
break;//只要发现一个指定的字符串 ,就结束,不用向后查找了。
}
}
}
if(prime)
cout<<"Yes"<<endl;
else
cout<<"No"<<endl;
}
return 0;
}
运行截图: