PAT甲题题解-1077. Kuchiguse (20)-找相同后缀

Posted 辰曦~文若

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PAT甲题题解-1077. Kuchiguse (20)-找相同后缀相关的知识,希望对你有一定的参考价值。

#include <iostream>
#include <cstdio>
#include <algorithm>
#include <string.h>
#include <cmath>
using namespace std;
/*
找最长相同后缀
*/
const int maxn=105;
char str[maxn][300];
char ans[300];
int len[maxn];
int main()
{
    int n;
    int cnt=0;
    int minlen=300;
    scanf("%d",&n);
    getchar();
    for(int i=0;i<n;i++){
        gets(str[i]);
        len[i]=strlen(str[i]);
        minlen=min(minlen,len[i]);
    }
    bool flag;
    for(int i=1;i<=minlen;i++){
        flag=true;
        for(int j=1;j<n;j++){
            if(str[j][len[j]-i]!=str[j-1][len[j-1]-i]){
                flag=false;
                break;
            }
        }
        if(!flag){
            break;
        }
        else{
            ans[cnt++]=str[0][len[0]-i];
        }
    }
    if(cnt==0){
        printf("nai");
    }
    else{
        //if(ans[cnt-1]==\' \')
            //cnt--;
        for(int i=cnt-1;i>=0;i--){
            printf("%c",ans[i]);
        }
    }
    return 0;
}
View Code

 

以上是关于PAT甲题题解-1077. Kuchiguse (20)-找相同后缀的主要内容,如果未能解决你的问题,请参考以下文章

pat 1077 Kuchiguse(20 分) (字典树)

PAT1077. Kuchiguse (20)

PAT 1077 Kuchiguse (20)

[PAT] 1077 Kuchiguse (20 分)Java

PAT甲1077 Kuchiguse字符串暴力Hash二分

1077. Kuchiguse (20)字符串处理——PAT (Advanced Level) Practise