본문 바로가기
알고리즘 풀이

[백준]10869번:사칙연산 - java 풀이

by 코디드 2023. 3. 23.

System.out.println(); 도 성능저하에 크게 기여한다.

그래서 자주 반복될 때는 BufferedWriter 와 StringBuilder 를 사용해서

System.out.println()을 최소한으로 사용할 수 있게 만들어준다

 

 

 

 

 

BufferedReader + StringTokenizer + BufferedWriter 풀이

 

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 IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		StringTokenizer st = new StringTokenizer(br.readLine(), " ");
		
		int A = Integer.parseInt(st.nextToken());
		int B = Integer.parseInt(st.nextToken());
		
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
		
		bw.write(A+B + "\n");
		bw.write(A-B + "\n");
		bw.write(A*B + "\n");
		bw.write(A/B + "\n");
		bw.write(A%B + "\n");
		
		bw.flush();
		bw.close();
	}
}

 

 

 

 

 

 

BufferedReader + StringTokenizer + StringBuilder 풀이

 

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));
		
		StringTokenizer st = new StringTokenizer(br.readLine(), " ");
		
		int A = Integer.parseInt(st.nextToken());
		int B = Integer.parseInt(st.nextToken());
		
		StringBuilder sb = new StringBuilder();
		
		sb.append(A+B+"\n");
		sb.append(A-B+"\n");
		sb.append(A*B+"\n");
		sb.append(A/B+"\n");
		sb.append(A%B+"\n");
		
		System.out.println(sb);
	}
}

 

 

 

 

출력성능을 따져보면 BufferedWriter>StringBuilder>System.out.println 라고 하니

출력 데이터가 많으면 앞에 두개를 쓰는게 좋겠다.