728x90
반응형
Python 문제풀이
n = int(input())
a = []
result = ''
for i in range(n):
a.insert(i,input())
if n==1:
print(a[0])
exit
for i in range(len(a[0])):
for j in range(n-1):
if a[j][i]!=a[j+1][i]:
result += '?'
break
elif j == n-2:
result += a[j][i]
print(result)
간단하게 입력받는 문장들의 각 자리를 비교해주면 된다. 각자리를 비교하다가 다른게 나온다면 '?' 문자를 결과 문자열에 추가해 주고 다음 자리 문자를 비교하기 위해 break를 한다.
그 자리의 문자가 모두 동일하다면 결과 문자열에 해당자리 문자를 추가해준다.
간과하게 되는 부분이 있는데, 문자열이 하나밖에 없는 경우의 처리를 따로 해주어야한다. 비교대상이 없기 때문에 그냥 그것만 출력하고 프로그램을 종료하도록 한다.
728x90
반응형
'코딩문제풀이 > 백준' 카테고리의 다른 글
[백준 1977번] 완전제곱수 Python 풀이 (0) | 2021.07.04 |
---|---|
[백준 1919번] 애너그램 만들기 Python 풀이 (0) | 2021.07.04 |
[백준 1009번] 분산처리 Python 풀이 (0) | 2021.07.03 |
[백준 1668번] 트로피 진열 Java 풀이 (0) | 2021.05.20 |
[백준 1439번] 뒤집기 Java 풀이 (0) | 2021.05.08 |