• 1077 Kuchiguse (20 分)


    The Japanese language is notorious for its sentence ending particles. Personal preference of such particles can be considered as a reflection of the speaker's personality. Such a preference is called "Kuchiguse" and is often exaggerated artistically in Anime and Manga. For example, the artificial sentence ending particle "nyan~" is often used as a stereotype for characters with a cat-like personality:

    • Itai nyan~ (It hurts, nyan~)

    • Ninjin wa iyada nyan~ (I hate carrots, nyan~)

    Now given a few lines spoken by the same character, can you find her Kuchiguse?

    Input Specification:

    Each input file contains one test case. For each case, the first line is an integer N (2). Following are N file lines of 0~256 (inclusive) characters in length, each representing a character's spoken line. The spoken lines are case sensitive.

    Output Specification:

    For each test case, print in one line the kuchiguse of the character, i.e., the longest common suffix of all N lines. If there is no such suffix, write nai.

    Sample Input 1:

    3
    Itai nyan~
    Ninjin wa iyadanyan~
    uhhh nyan~
     

    Sample Output 1:

    nyan~
     

    Sample Input 2:

    3
    Itai!
    Ninjinnwaiyada T_T
    T_T
     

    Sample Output 2:

    nai

    注意getline对回车键的读入

    #include<bits/stdc++.h>
    using namespace std;
    const int maxn=100010;
    int main(){
        int n;
        scanf("%d
    ",&n);//注意:一定要加
      ;  如果发现输出少了,一定要检查是否读入空格
        string str,ans;
        for(int i=0;i<n;i++){
            getline(cin,str);
            int lens=str.length();
            reverse(str.begin(),str.end());
            if(i==0){
                ans=str;
            }
            else{
                int lena=ans.length();
                if(lens<lena){
                    swap(str,ans);
                }
                int len=min(lena,lens);
                for(int j=0;j<len;j++){
                    if(str[j]!=ans[j]){
                        ans=ans.substr(0,j);//左闭右开
                        break;
                    }
                }
            }
        }
        reverse(ans.begin(),ans.end());
        if(ans.length()>0){
                cout<<ans<<endl;
            }
            else{
                cout<<"nai"<<endl;
            }
        
        return 0;
    }
  • 相关阅读:
    BZOJ1999或洛谷1099&BZOJ2282或洛谷2491 树网的核&[SDOI2011]消防
    BZOJ1912或洛谷3629 [APIO2010]巡逻
    CH6202 黑暗城堡
    POJ2728 Desert King
    JoyOI1391 走廊泼水节
    洛谷1073 最优贸易
    POJ3662或洛谷1948 Telephone Lines
    BZOJ1106 [POI2007]立方体大作战tet
    ubuntu 16.04 安装genymotion
    ubuntu下搭建android开发环境核心篇安装AndroidStudio、sdk、jdk
  • 原文地址:https://www.cnblogs.com/dreamzj/p/14466013.html
Copyright © 2020-2023  润新知