규도자 개발 블로그

[백준/11719/자바(Java)] 그대로 출력하기 2 본문

알고리즘/풀이

[백준/11719/자바(Java)] 그대로 출력하기 2

규도자 (gyudoza) 2018. 9. 19. 00:04

문제

입력 받은 대로 출력하는 프로그램을 작성하시오.

입력

입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄이 주어질 수도 있고, 각 줄의 앞 뒤에 공백이 있을 수도 있다.

출력

입력받은 그대로 출력한다.

입출력 예

입력출력
Hello

Baekjoon
Online Judge
Hello

Baekjoon
Online Judge

풀이

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
class Main{   
    public static void main(String[] args) throws Exception {
        BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); 
        String str=null;
        ArrayList<String> strList = new ArrayList<String>();
        for(int i=0;i<100;i++){
            str=in.readLine();
            if(str==null){
            	strList.add("");
            }else{
            	strList.add(str);
            }
        }
        for(String strr : strList) {
        	System.out.println(strr);
        }
    }
}

설명

입력조건에 대한 필터링이 필요없다는 걸 깨닫고 필터를 지운 코드이다. 전 문제(11718)와의 차이가 있다면 각 문장에 대한 앞 뒤 공백에 대한 처리를 딱히 하지 않고 빈 공간에 대한 것도 그대로 출력한다는 점에 있다. 잘 확인되진 않지만 3번째 줄 Baekjoon이라는 단어 뒤에도 공백이 있다. 역시 Scanner클래스 대신 BufferedReader클래스를 사용하여 풀어야 한다.

Comments