zoukankan      html  css  js  c++  java
  • 返回子串CF 312A(Whose sentence is it?strstr(s,p))

    最近研究返回子串,稍微总结一下,以后继续补充:

    A. Whose sentence is it?
    time limit per test
    2 seconds
    memory limit per test
    256 megabytes
    input
    standard input
    output
    standard output

    One day, liouzhou_101 got a chat record of Freda and Rainbow. Out of curiosity, he wanted to know which sentences were said by Freda, and which were said by Rainbow. According to his experience, he thought that Freda always said "lala." at the end of her sentences, while Rainbow always said "miao." at the beginning of his sentences. For each sentence in the chat record, help liouzhou_101 find whose sentence it is.

    Input

    The first line of the input contains an integer n (1 ≤ n ≤ 10), number of sentences in the chat record. Each of the next n lines contains a sentence. A sentence is a string that contains only Latin letters (A-Za-z), underline (_), comma (,), point (.) and space ( ). Its length doesn’t exceed 100.

    Output

    For each sentence, output "Freda's" if the sentence was said by Freda, "Rainbow's" if the sentence was said by Rainbow, or "OMG>.< I don't know!" if liouzhou_101 can’t recognize whose sentence it is. He can’t recognize a sentence if it begins with "miao." and ends with "lala.", or satisfies neither of the conditions.

    Sample test(s)
    input
    5
    I will go to play with you lala.
    wow, welcome.
    miao.lala.
    miao.
    miao .
    
    output
    Freda's
    OMG>.< I don't know!
    OMG>.< I don't know!
    Rainbow's
    OMG>.< I don't know!
    

        每日一道理
    我拽着春姑娘的衣裙,春姑娘把我带到了绿色的世界里。

    strstr(s,p)   //在s中找p,返回指向第一个子串首的指针,若无返回NULL.

        gets(s)    //读入一行.

        

    #include<cstdio>
    #include<cstdlib>
    #include<cstring>
    #include<iostream>
    #include<algorithm>
    #include<functional>
    #include<cmath>
    #include<cctype>
    using namespace std;
    #define For(i,n) for(int i=1;i<=n;i++)
    #define Rep(i,n) for(int i=0;i<n;i++)
    #define Fork(i,k,n) for(int i=k;i<=n;i++)
    #define ForD(i,n) for(int i=n;i;i--)
    #define Forp(x) for(int p=pre[x];p;p=next[p])
    #define RepD(i,n) for(int i=n;i>=0;i--)
    int n;
    char s[1000+10],p1[10]="miao.",p2[10]="lala.";
    int main()
    {
    //	freopen("CF312A.in","r",stdin);
    //	freopen(".out","w",stdout);
    	scanf("%d",&n);gets(s);
    	while (n--)
    	{
    		gets(s);
    		int len=strlen(s);
    		bool b1=(strstr(s,p1))==s,b2=(strstr(s+strlen(s)-strlen(p2),p2)==(s+strlen(s)-strlen(p2)));
    		if (!(b1^b2)) puts("OMG>.< I don't know!"); 
    		else if (b1) puts("Rainbow's");
    		else puts("Freda's");	
    	}
    	return 0;
    }

         

    文章结束给大家分享下程序员的一些笑话语录: 腾讯的动作好快,2010年3月5日19时28分58秒,QQ同时在线人数1亿!刚刚看到编辑发布的文章,相差才2分钟,然后连专题页面都做出来了,他们早就预料到了吧?(其实,每人赠送10Q币,轻轻松松上两亿!)

    --------------------------------- 原创文章 By
    返回和子串
    ---------------------------------

  • 相关阅读:
    原型模式
    Object.defineProperties()和Object.defineProperty()方法
    访问器属性:setter()函数和getter()函数
    2019.7.11刷题统计
    2019.7.10刷题统计
    2019.7.9刷题统计
    2019.7.8刷题统计
    2019.7.7刷题统计
    2019.7.6刷题统计
    2019.7.5刷题统计
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3102401.html
Copyright © 2011-2022 走看看