1 solutions
-
0
C++ :
#include<stdio.h> #include<string.h> #include<algorithm> #define INF 100000000 using namespace std; char a[100][100]; int b[100][100]; int zm[26]; int main() { int n,m; while(scanf("%d%d",&n,&m)!=EOF) { memset(b,0,sizeof(b)); for(int i=0;i<n;i++) scanf("%s",a[i]); for(int i=0;i<n;i++) { memset(zm,0,sizeof(zm)); for(int j=0;j<m;j++) { zm[a[i][j]-'a']++; if(zm[a[i][j]-'a']==2) { for(int o=0;o<m;o++) if(a[i][o]==a[i][j]) b[i][o]=INF; } } } for(int i=0;i<m;i++) { memset(zm,0,sizeof(zm)); for(int j=0;j<n;j++) { zm[a[j][i]-'a']++; if(zm[a[j][i]-'a']==2) { for(int o=0;o<n;o++) if(a[o][i]==a[j][i]) b[o][i]=INF; } } } for(int i=0;i<n;i++) for(int j=0;j<m;j++) { if(b[i][j]!=INF) printf("%c",a[i][j]); } printf("\n"); } }Python :
import sys line=sys.stdin.readline() while line: #print line n,m=map(int,line.split()) ma=[] ans="" for i in range(n): line=sys.stdin.readline() ma.append(line) for i in range(n): for j in range(m): tag=1 for k in range(n): #print map[k][j],map[i][j] if ma[k][j]==ma[i][j] and k!=i: tag=0 break for k in range(m): if tag==0: break if ma[i][j]==ma[i][k] and k!=j: tag=0 break if tag: ans+=ma[i][j] print ans line=sys.stdin.readline()
- 1
Information
- ID
- 19280
- Time
- 1000ms
- Memory
- 128MiB
- Difficulty
- (None)
- Tags
- # Submissions
- 0
- Accepted
- 0
- Uploaded By