백준 알고리즘/반복문

백준 15552번 :: 빠른 A+B

Sun720 2022. 5. 22. 22:34

▶ 문제

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

 

15552번: 빠른 A+B

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

www.acmicpc.net

 설명

문제 설명이 길어서 복잡하려나 싶었지만 그냥 Scanner 뿐만 아니라 BufferedReader를 사용해서 입력 시간을 단축시켜보자는 입출력문 연습하는 문제였다. 출력에서도 System.out.println( ) 말고 BufferedWriter 사용을 권장했다.

백준을 처음에 접했던 입출력 단계에서 이미 꾸준히 사용해왔기 때문에 어려운 점은 없었다. 

 

첫 줄에 정수를 입력 받은 후 그 값 만큼 더하기 연산을 할 두 수를 계속 입력 받는다. 

입력을 받고 연산을 하는 부분은 처음 입력받은 5만큼 반복문을 통해 구현하면 된다.

문제 풀이

🌱 풀이. 

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

public class Main {

	public static void main(String[] args) throws NumberFormatException, IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
		
		int count = Integer.parseInt(br.readLine());

		for (int i =0; i<count; i++) {
			String str = br.readLine();
			StringTokenizer strTo = new StringTokenizer(str, " ");
			
			int num1 = Integer.parseInt(strTo.nextToken());
			int num2 = Integer.parseInt(strTo.nextToken());
			
			bw.write((num1+num2)+"\n");
		}
		bw.flush();
		bw.close();
	}

}

입출력에 BufferedReader, BufferedWriter를 먼저 선언해주고 해당 라이브러리를 import 해준다.

 

Log

입출력을 처음 할 때는 Scanner 가 익숙해서 BufferedReader를 항상 헷갈려했는데 계속해서 쓰다보니까 어느새 편해졌다. StringTokenizer와 형변환도 해줘야 하는 Integer.parseInt( )도 한 세트로 자주 사용하다보니 기계적으로 입력하고는 한다. 

nextToken()과 같이 쓰는 것만 쓰다보니 해당하는 클래스의 메소드도 간간히 알아보고 유연하게 사용하는 날이 왔으면 한다.

728x90
반응형

'백준 알고리즘 > 반복문' 카테고리의 다른 글

백준 2742 :: 기찍 N  (0) 2022.05.23
백준 2741번 :: N 찍기  (0) 2022.05.23
백준 8393번 :: 합  (0) 2022.05.22
백준 10950번 :: A+B -3  (0) 2022.05.21
백준 2739번 :: 구구단  (0) 2022.05.20