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; }
运行截图: