HDOJ 5007 Post Robot

索尼大法好

Post Robot

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)

Total Submission(s): 156    Accepted Submission(s): 134

Problem Description

DT is a big fan of digital products. He writes posts about technological products almost everyday in his blog.

But there is such few comments of his posts that he feels depressed all the day. As his best friend and an excellent programmer, DT asked you to help make his blog look more popular. He is so warm that you have no idea how to refuse. But you are unwilling to
read all of his boring posts word by word. So you decided to write a script to comment below his posts automatically.

After observation, you found words “Apple” appear everywhere in his posts. After your counting, you concluded that “Apple”, “iPhone”, “iPod”, “iPad” are the most high-frequency words in his blog. Once one of these words were read by your smart script, it will
make a comment “MAI MAI MAI!”, and go on reading the post.

In order to make it more funny, you, as a fan of Sony, also want to make some comments about Sony. So you want to add a new rule to the script: make a comment “SONY DAFA IS GOOD!” when “Sony” appears.

Input

A blog article described above, which contains only printable characters(whose ASCII code is between 32 and 127), CR(ASCII code 13, ‘\r’ in C/C++), LF(ASCII code 10, ‘\n’ in C/C++), please process input until EOF. Note all characters are case sensitive.

The size of the article does not exceed 8KB.

Output

Output should contains comments generated by your script, one per line.

Sample Input

Apple bananaiPad lemon ApplepiSony
233
Tim cook is doubi from Apple
iPhoneipad
iPhone30 is so biiiiiiig Microsoft
makes good App.

Sample Output

MAI MAI MAI!
MAI MAI MAI!
MAI MAI MAI!
SONY DAFA IS GOOD!
MAI MAI MAI!
MAI MAI MAI!
MAI MAI MAI!

Source

2014 ACM/ICPC Asia Regional Xi‘an Online

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>

using namespace std;

char word[10000000];

char Apple[6]="Apple";
char iPad[5]="iPad";
char iPhone[7]="iPhone";
char iPod[5]="iPod";
char SONY[5]="Sony";

int id[5];

int main()
{
    while(scanf("%s",word)!=EOF)
    {
        int n=strlen(word);

        memset(id,0,sizeof(id));        

        for(int i=0;i<n;i++)
        {
            if(Apple[id[0]]==word[i])
                id[0]++;
            else id[0]=0;
            if(id[0]==5)
            {
                id[0]=0;
        <span style="white-space:pre">	</span>memset(id,0,sizeof(id));
                puts("MAI MAI MAI!");
            }
            if(iPad[id[1]]==word[i])
                id[1]++;
            else id[1]=0;
            if(id[1]==4)
            {
                id[1]=0;
        <span style="white-space:pre">	</span>memset(id,0,sizeof(id));
                puts("MAI MAI MAI!");
            }

            if(iPhone[id[2]]==word[i])
                id[2]++;
            else
                id[2]=0;

            if(id[2]==6)
            {
                id[2]=0;
        <span style="white-space:pre">	</span>memset(id,0,sizeof(id));
                puts("MAI MAI MAI!");
            }

            if(iPod[id[3]]==word[i])
                id[3]++;
            else id[3]=0;
            if(id[3]==4)
            {
                id[3]=0;
        <span style="white-space:pre">	</span>memset(id,0,sizeof(id));
                puts("MAI MAI MAI!");
            }

            if(SONY[id[4]]==word[i])
                id[4]++;
            else id[4]=0;

            if(id[4]==4)
            {
                id[4]=0;
        <span style="white-space:pre">	</span>memset(id,0,sizeof(id));
                puts("SONY DAFA IS GOOD!");
            }
        }
    }
    return 0;
}
时间: 2024-08-07 17:28:39

HDOJ 5007 Post Robot的相关文章

HDOJ 5007 Post Robot--2014网络赛西安赛区A题

题目来源:http://acm.hdu.edu.cn/showproblem.php?pid=5007 Post Robot Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 193    Accepted Submission(s): 164 Problem Description DT is a big fan of digital

HDU 5007 Post Robot

Post Robot Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1306    Accepted Submission(s): 941 Problem Description DT is a big fan of digital products. He writes posts about technological produc

HDU 5007 Post Robot KMP (ICPC西安赛区网络预选赛 1001)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5007 解题报告:输入一篇文章,从头开始,当遇到 “Apple”, “iPhone”, “iPod”, “iPad” 这几个字符串时,输出”MAI MAI MAI!“,当遇到"Sony"时,输出“SONY DAFA IS GOOD!". 看题太渣,题目意思还有个每个单词最多只出现一次关键词.有了这个条件就简单了,只要分别对每个单词进行五次KMP,匹配到了就输出对应的解释. 1 #i

HDU 5007 Post Robot(字符串寻找)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5007 Problem Description DT is a big fan of digital products. He writes posts about technological products almost everyday in his blog. But there is such few comments of his posts that he feels depressed

HDOJ 题目1035 Robot Motion(模拟)

Robot Motion Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 7372    Accepted Submission(s): 3389 Problem Description A robot has been programmed to follow the instructions in its path. Instruc

2014 网选 5007 Post Robot(暴力或者AC_自动机(有点小题大作了))

//暴力,从每一行的开始处开始寻找要查询的字符 #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; char str[100005]; int main(){ while(gets(str)){ for(int i=0; str[i]; ++i) if(str[i]=='A'){ if(strstr(str+i, &quo

hdu 5007(字符串水题)

题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5007 Post Robot Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 327    Accepted Submission(s): 253 Problem Description DT is a big fan of digital

hdoj 1035 Robot Motion

Robot Motion Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 7974    Accepted Submission(s): 3685 Problem Description A robot has been programmed to follow the instructions in its path. Instruct

Spring-1-A Post Robot(HDU 5007)解题报告及测试数据

Post Robot Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K Problem Description DT is a big fan of digital products. He writes posts about technological products almost everyday in his blog. But there is such few comments of his