[백준-Java] 15552. 빠른 A+B

Dreamer·2024년 1월 23일
0

문제

문제 요약

<Java 사용>
Scanner -> BufferedReader
System.out.println -> BufferedWriter
BufferedWriter.flush = 마지막에 한 번만 하면 된다.

+ 또한 입력과 출력 스트림은 별개이므로,
테스트케이스를 전부 입력받아서 저장한 뒤 전부 출력할 필요는 없다.
테스트케이스를 하나 받은 뒤 하나 출력해도 된다.

입력, 출력

입력
첫번째 줄 : T = 테스트 케이스의 개수 (T <= 1,000,000)
두번째 줄 : 두 정수 A, B (1 <= A, B <= 1,000)

출력
테스트 케이스마다 A+B를 한줄에 하나씩 순서대로 출력

예제 입력, 출력 ⭣

예제


해결 방법

구현 코드


package Study;

// Q. 15552번 : 빠른 A+ B

// 입출력 방식이 느리면 여러 줄을 입력받거나 출력할 때 시간초과가 날 수 있다는 점이다.
// Java를 사용하고 있다면,
// Scanner -> BufferedReader
// System.out.println -> BufferedWriter
// + StringBuilder로 출력을 모아 놓았다가 그 String을 System.out.println하는 방법

// BufferedWriter.flush 맨 마지막에 한 번만 하면 된다.

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 T = Integer.parseInt(br.readLine());  // 테스트 케이스 T를 string -> int로 변환

        for (int i = 0; i < T; i++) {
            StringTokenizer st = new StringTokenizer(br.readLine(), " ");   // string 공백으로 자르기
            int a = Integer.parseInt(st.nextToken());
            int b = Integer.parseInt(st.nextToken());
            bw.write(a + b + "\n");
        }
        br.close();

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

공부한 부분

입력 함수 : Scanner -> BufferedReader 사용법
출력 함수 : System.out.printnln -> BufferedWriter 사용법
데이터 가공 작업 (파싱)


참고 자료
https://st-lab.tistory.com/30

profile
Moving forward based on records

0개의 댓글