Algorithm/백준
백준문제 15552번 bufferedreader/writer 사용
EverJunior Minjoo
2022. 6. 4. 23:48
한동안 BufferedReader 를 사용 안해서... 잠시 잊고있었다.
다들 많이들 사용하는 Scanner 보다 훨씬 성능이 좋다고 한다. 그래서 백준문제에서 시간을 요하는 경우 Bufferedreader/ writer를 사용해줘야한다.
순간 이거 쓸때 스캐너처럼 바로 system.in썻는데 buffered 사용할때는 InputStreamReader 사용해줘야한다. BufferedWriter도 마찬가지로 outputStreamReader 사용해야한다. 그래서 두개를 사용하고, 정수를 입력받을때 공백이 들어가는데 그러면 여기서 넘버포맷익셉션 발생해서 공백을 split이나 StringTokenizer 사용해야하는데 split보다 StringTokenizer가 성능이 더 좋아서 StringTokenizer로 사용했다.
입력
첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 1,000,000이다. 다음 T줄에는 각각 두 정수 A와 B가 주어진다. A와 B는 1 이상, 1,000 이하이다.
출력
각 테스트케이스마다 A+B를 한 줄에 하나씩 순서대로 출력한다.
import java.io.*;
import java.util.StringTokenizer;
public class Test04 {
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));
StringTokenizer st ;
int tc, a, b;
tc= Integer.parseInt(br.readLine());
for(int i = 0; i < tc; i++ ) {
st = new StringTokenizer(br.readLine()," ");
a = Integer.parseInt(st.nextToken());
b = Integer.parseInt(st.nextToken());
bw.write(a+b+"\n");
}
bw.flush();
bw.close();
br.close();
}
}