상세 컨텐츠

본문 제목

명령 프롬프트

코딩테스트

by dofury 2023. 5. 12. 14:33

본문

728x90

import java.io.*;
import java.util.ArrayList;


public class Main {
    public static void main(String[] args) throws IOException {

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

        /*
        * 반복문을 돌아서 입력한 단어를 한 문자씩 읽는다.
        * 다른게 하나라도 있으면 ?를 버퍼에 추가한다.
        * 없으면 원문자 그대로 버퍼에 추가한다.
        * */

        ArrayList<String> files = new ArrayList<String>();
        int count = Integer.parseInt(br.readLine());


        StringBuilder buffer = new StringBuilder();
        for(int i =0;i<count;i++){//파일이름 추가
            files.add(br.readLine());
        }

        for(int i=0;i<files.get(0).length();i++) {//첫번째 파일 이름을 기준으로 한문자씩 탐색
            int bufferLength = buffer.length();
            for (String file : files) {// 비교
                if (files.get(0).charAt(i) != file.charAt(i)) { //다른 문자가 하나라도 존재시 버퍼에 ? 추가
                    buffer.append("?");
                    break;
                }
            }
            if(bufferLength == buffer.length()){//다 같은문자일시 버퍼에 문자그대로 추가
                buffer.append(files.get(0).charAt(i));
            }
        }
        bw.write(String.valueOf(buffer));

        bw.flush();
        bw.close();

    }
}

https://www.acmicpc.net/problem/1032

728x90

'코딩테스트' 카테고리의 다른 글

헌내기는 친구가 필요해 (백준)  (0) 2023.06.27
영화감독 숌  (0) 2023.05.19
  (0) 2023.05.12
정사각형  (0) 2023.05.09
단어 정렬  (0) 2023.05.09

관련글 더보기

댓글 영역