문제
문자열에서 교체 연산은 문자열의 한 문자를 다른 문자로 바꾸는 연산이다.
예를 들어, 문자열 "computer"에서 4번째 문자 p를 m으로 교체하면 "commuter"가 된다.
같은 길이의 두 문자열 P와 Q의 거리 d(P,Q)는 P를 Q로 바꾸기 위한 교체 연산의 최소 개수로 정의된다.
예를 들어 P = "computers", Q = "consumers"라 하면,
P에서 3번째 문자 m을 n으로, 4번째 문자 p를 s로, 6번째 문자 t를 m으로 바꾸면 Q가 된다.
따라서 P와 Q 사이의 거리는 3이다.
A, B, C를 같은 길이의 문자열이라 하자.
이 때 어떤 문자열 W의 반경 r(W)는 문자열 W와 문자열 A, B, C와의 거리 중 최대값으로 정의된다.
즉, r(W)= max{ d(W,A), d(W,B), d(W,C) } 이다.
예를 들어, A = "computers", B = "consumers", C = "consensus"일 때, X = "consunsrs"라 두면,
A, B, C와 X 사이의 거리는 d(X,A) = 4, d(X,B) = 2, d(X,C) = 2이므로, X의 반경 r(X)는 4이다.
문자열 A, B, C의 중앙문자열은 A, B, C와의 반경이 최소가 되는 문자열로 정의된다.
예를 들어, 문자열 A, B, C가 위와 같이 주어졌을 때, Y = "consuners"라 두면, Y의 반경은 3이고,
반경이 2인 문자열은 존재하지 않으므로, Y는 A, B, C의 중앙문자열이 된다.
영어 소문자들로만 구성된 문자열 A, B, C가 주어졌을 때, 이들의 중앙문자열을 구하는 프로그램을 작성하라.
입력
출력
예제1
computers
consumers
consensus
3
consuners