acb.exe, aab.exe, apb.exe가 나와도 문제 없다고 하는 말을 다시 해석해보면
?표에 들어간 단어는 달라도 무관하다는 의미를 가집니다.
즉, 입력받은 값들 중 같은 값이 아닌 경우에는 ? 표시를 해주면 되는 문제입니다.
코드를 보면 아래와 같습니다.
# 명령 프롬포트 - 1032
inputValue = int(input())
for i in range(inputValue):
if i == 0:
value = list(input())
result = value
else :
n_value = list(input())
for j in range(len(value)):
if value[j] == n_value[j]:
result[j] = value[j]
else:
result[j] = '?'
print(''.join(result))
문자열로 비교하는 방식보다는 리스트로 비교 후 리스트를 문자열로 변환하는게 조금 더 편할 것 같아서 위와 같이 구현했습니다.