Little bIT awesome

BufferedWriter (백준 15552번) 본문

코딩테스트/백준

BufferedWriter (백준 15552번)

까루카라 2024. 1. 4. 10:25
import java.io.*;
import java.util.StringTokenizer;

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));
        int n = Integer.parseInt(br.readLine());
        StringTokenizer st;

        for (int i = 0; i < n; i++) {
            st = new StringTokenizer(br.readLine());
            int sum = Integer.parseInt(st.nextToken()) + Integer.parseInt(st.nextToken());
            bw.write(sum + "\n");
            // 버퍼에 모아놨다가 출력
        }
        bw.close();
    }
}

 

BufferedWriter는 write 할때마다 바로바로 쓰는게 아니라 입력받은 값들을 버퍼에 저장해놓고 있다가 close할 때 한번에 출력해줌

위의 코드를 System.out.println으로 사용하면 입력받을 때마다 출력이 되어서 수정해야 함. 예를 들면 위의 코드는 

 

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int n = Integer.parseInt(br.readLine());
        int[] A = new int[n];
        int[] B = new int[n];
        String s;
        StringTokenizer st;
        for (int i = 0; i < n; i++) {
            s = br.readLine();
            st = new StringTokenizer(s);
            A[i] = Integer.parseInt(st.nextToken());
            B[i] = Integer.parseInt(st.nextToken());
        }
        for (int i = 0; i < n; i++) {
            System.out.println(A[i] + B[i]);
        }
    }
}

 

이런식으로 배열을 생성해서 입력 받은 값을 저장했다가 새로운 for문을 만들어 한번에 처리해주어야 한다. 

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

배열 역순으로 정렬하기  (0) 2024.01.10
[Java] BufferedReader & BufferedWriter  (2) 2024.01.03