P2548 [AHOI2004]智能探险车

原题链接:https://www.luogu.org/problemnew/show/2548

讲道理这题水过了。。。

题意简述:给出n*m个字符串,要求检查是否在所有的n行字符串中,第m个字符串都相同,是则输出该字符串,否则输出“*”

没什么好说的,暴力比较即可。

#include<cstdio>
#include<cstring>
int n,m,l[1005];
char p[1001][15],t[15];
int ans[1001];
int main()
{
    scanf("%d %d",&m,&n);
    for(int i=1;i<=m;i++)
    {
        scanf("%s",p[i]);
        l[i]=strlen(p[i]);
    }
    for(int i=1;i<n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            scanf("%s",t);
            if(strlen(t)!=l[j]) ans[j]=1;
            if(ans[j]==0)
            {
                for(int k=0;k<l[j];k++)
                {
                    if(p[j][k]!=t[k])
                    {
                        ans[j]=1;
                        break;
                    }
                }
            }
        }
    }
    for(int i=1;i<m;i++)
    {
        if(ans[i]==0) printf("%s ",p[i]);
        else printf("* ");
    }
    if(ans[m]==0) printf("%s",p[m]);
    else printf("*");
    return 0;
}

 

posted @ 2018-01-20 14:29  Excim  阅读(157)  评论(0编辑  收藏  举报