본문 바로가기

Android ᙏ̤̫͚/차근차근 JAVA

[백준 15552번] 빠른 A+B

 

BOJ15552

 

15552번: 빠른 A+B

첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 1,000,000이다. 다음 T줄에는 각각 두 정수 A와 B가 주어진다. A와 B는 1 이상, 1,000 이하이다.

www.acmicpc.net

 

[문제]

(Scanner / System.out.println 대신 BufferedReader와 BufferedWriter 사용하여 입출력하는 프로그램

첫 줄에 test case의 개수를 입력받아,

다음 줄부터 A와 B 입력받고 두 수의 합을 한 줄에 하나씩 순서대로 출력하는 프로그램

 

<3단계> for문

<알고리즘 분류> 수학, 구현, 사칙연산

 

[input]

test case 개수 T (T ≤ 1,000,000)

A와 B (1 ≤ A, B ≤ 1,000)

 

[output]

test case 마다 A+B 하나씩 순서대로 print

 


 

[풀이 방법]

  1. test case 개수 T 입력받기

  2. for문 사용하여 AB를 T개의 쌍만큼 입력받기

  3. test case별 A+B 순서대로 출력

 


 

[참고] BufferedReader와 BufferedWriter

 

  사용하기 전 선언

        ♪ import java.io.BufferedReader;

        ♪ import java.io.BufferedWriter;

        ♪ import java.io.InputStreamReader;

        ♪ import java.io.OutputStreamWriter;

        ♪ import java.util.StringTokenizer;

 

  BufferedReader 사용법

    (String으로만 읽어들이기 때문에 int값 리턴하기 위해 형변환 필요)

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        String s = br.readLine( );

        ** 한 줄 단위로 읽어들이기 때문에 공백 단위의 데이터 가공 작업 필요

          ① StringTokenizer st = new StringTokenizer(s);

              int a = Integer.parseInt(st.nextToken( ));

              int b = Integer.parseInt(st.nextToken( ));

          ② String array[ ] = s.split(" ");

        ** readLine( ); 사용시 주의해야 할 점

          ① String으로 return값이 고정이므로, 형변환 필요

          ② 예외처리 꼭 해줘야 함 (try-catch문 / throws IOException 사용)

 

  BufferedWriter 사용법

        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

        bw.write(s + "\n");

        bw.close( ); // 반드시 필요함

 


 

성공 코드

'Android ᙏ̤̫͚ > 차근차근 JAVA' 카테고리의 다른 글

[백준 2742번] 기찍 N  (0) 2021.01.25
[백준 2741번] N 찍기  (0) 2021.01.25
[백준 8393번] 합  (0) 2021.01.25
[백준 10950번] A + B - 3  (0) 2021.01.25
[백준 2739번] 구구단  (0) 2021.01.25