zcmu1717: 我就问问还有谁?

狗狗说话模式识别
本文介绍了一个简单的算法,用于识别两只狗狗'H'和'C'独特的说话模式。'H'的每句话都以'zhizhang'结尾,而'C'的话则以'caibi'开头。通过分析输入的字符串并检查这些特定的模式,该算法能够准确地判断出哪只狗狗说了哪句话。

Description

有2个人,一旦进入某种模式,说话就会变的很有特点,名叫‘H’的狗狗,进入这个模式后,说话就成了这个样子:‘*****zhizhang’,另一只叫’C‘狗狗总是说‘caibi***********’,现在有n句话想知道是谁说的

Input

第一行一个整数n(n<=10^6)n==0结束输入

接下来n行话(只有字母和空格组成的)

Output

输出’H‘,’C‘ 或者 ’I do not know‘

Sample Input

3
zcc zhizhang
caibi cfh
ffffff
0

Sample Output

H
C
I do not know

HINT

H 说话的特点就是 每句话以zhizhang结尾,C说话的特点是caibi开始,如果不能分清输出 I do not know

Source

#include<stdio.h>
#include<string.h>
int main()
{
	int n;
	char a[10010];
	while(scanf("%d",&n)!=EOF&&n!=0)
	{
		int i;
		getchar();
		for(i=0;i<n;i++)
		{
			gets(a);
			int len=0;
			len=strlen(a);    //接着考虑到caibi zhizhang这种情况 
			if((a[0]=='c'&&a[1]=='a'&&a[2]=='i'&&a[3]=='b'&&a[4]=='i')&&!(a[len-8]=='z'&&a[len-7]=='h'&&a[len-6]=='i'&&a[len-5]=='z'&&a[len-4]=='h'&&a[len-3]=='a'&&a[len-2]=='n'&&a[len-1]=='g'))
			printf("C\n");
			else if((a[len-8]=='z'&&a[len-7]=='h'&&a[len-6]=='i'&&a[len-5]=='z'&&a[len-4]=='h'&&a[len-3]=='a'&&a[len-2]=='n'&&a[len-1]=='g')&&!(a[0]=='c'&&a[1]=='a'&&a[2]=='i'&&a[3]=='b'&&a[4]=='i'))
			printf("H\n");
			else
			printf("I do not know\n");
		}
	}
	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值