입력 받는 모든 문자열의 길이는 같으므로 첫 번째 문자열을 기준으로 다음 문장과 그 다음 문자열을 비교한다.
먼저 첫 번째 문자열과 다음 문자열의 첫 문자부터 시작하여 문자가 서로 다르다면 해당 문자를 " ? "로 바꾼다.
마지막 문장까지 반복 비교한 후 변경된 문자열을 출력한다.
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class Main {
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringBuffer newString = new StringBuffer();
int N = Integer.parseInt(br.readLine());
String str[] = new String[N];
for(int i=0; i<N; i++) {
str[i] = br.readLine();
}
newString.append(str[0]);
for(int i=1; i<N; i++) {
for(int j=0; j<str[0].length(); j++) {
if(str[i].charAt(j) != newString.charAt(j)) {
newString.replace(j,j+1, "?");
}
}
}
System.out.println(newString);
}
}
[출처]
https://www.acmicpc.net/problem/1032
'CODING > BAEKJOON' 카테고리의 다른 글
[BAEKJOON] 1316번 그룹 단어 체커 (0) | 2022.02.01 |
---|---|
[BAEKJOON] 1977번 완전제곱수 (0) | 2022.02.01 |
[BAEKJOON] 1259번 팰린드롬수 (0) | 2022.01.31 |
[BAEKJOON] 1193번 분수 찾기 (0) | 2022.01.31 |
[BAEKJOON] 2839번 설탕 배달 (0) | 2022.01.30 |
댓글