原题链接: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; }