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
반응형

+ Recent posts