0
点赞
收藏
分享

微信扫一扫

hdu5007 小水题

陈情雅雅 2022-07-18 阅读 86

题意:

      给你一个串,如果出现子串 “Apple”, “iPhone”, “iPod”, “iPad“输出MAI MAI MAI!,如果出现子串Sony 输出SONY DAFA IS GOOD!.


思路:

     水题,直接模拟就行了,题目是一组测试数据,说是输入的小于8KB,这个我没有算具体要开多大,为了省事,我直接没开数字,用%c直接累加模拟就行了,有个地方注意下'\n'不能忽略,也就是说Appl\ne != Apple.



#include<stdio.h>

int main ()
{
int s1 ,s2 ,s3 ,s4 ,s5;
char c;
while(~scanf("%c" ,&c))
{
if(c == 'A') s1 = 1;
else if(c == 'p' && s1 == 1) s1 = 2;
else if(c == 'p' && s1 == 2) s1 = 3;
else if(c == 'l' && s1 == 3) s1 = 4;
else if(c == 'e' && s1 == 4)
{
printf("MAI MAI MAI!\n");
continue;
}else s1 = 0;

if(c == 'i') s2 = 1;
else if(c == 'P' && s2 == 1) s2 = 2;
else if(c == 'h' && s2 == 2) s2 = 3;
else if(c == 'o' && s2 == 3) s2 = 4;
else if(c == 'n' && s2 == 4) s2 = 5;
else if(c == 'e' && s2 == 5)
{
printf("MAI MAI MAI!\n");
continue;
}else s2 = 0;

if(c == 'i') s3 = 1;
else if(c == 'P' && s3 == 1) s3 = 2;
else if(c == 'o' && s3 == 2) s3 = 3;
else if(c == 'd' && s3 == 3)
{
printf("MAI MAI MAI!\n");
continue;
}else s3 = 0;

if(c == 'i') s4 = 1;
else if(c == 'P' && s4 == 1) s4 = 2;
else if(c == 'a' && s4 == 2) s4 = 3;
else if(c == 'd' && s4 == 3)
{
printf("MAI MAI MAI!\n");
continue;
}else s4 = 0;

if(c == 'S') s5 = 1;
else if(c == 'o' && s5 == 1) s5 = 2;
else if(c == 'n' && s5 == 2) s5 = 3;
else if(c == 'y' && s5 == 3)
{
printf("SONY DAFA IS GOOD!\n");
continue;
}else s5 = 0;

}
return 0;
}




举报

相关推荐

0 条评论