Notice
Recent Posts
Recent Comments
Link
«   2025/12   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Tags more
Archives
Today
Total
관리 메뉴

jeongwon

[백준 JAVA] 10871번 X보다 작은 수 본문

오늘의 문제

[백준 JAVA] 10871번 X보다 작은 수

jeongwon_ 2022. 5. 22. 20:35

 

 

나의 답안:

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

class Main{
	public static void main(String[] args)  {
		BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
	
		try {
			StringTokenizer st1=new StringTokenizer(bf.readLine()," ");
			StringTokenizer st2=new StringTokenizer(bf.readLine()," ");
			bf.close();
			int n=Integer.parseInt(st1.nextToken());
			int x=Integer.parseInt(st1.nextToken());
			for(int i=0; i<n; i++) {
				int a=Integer.parseInt(st2.nextToken());
				if(x>a) System.out.print(a+" ");
			}			
		} catch (IOException e) {
			e.printStackTrace();
		}
	}	
}

 

개선 답안:

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
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 N = Integer.parseInt(st.nextToken());
		int X = Integer.parseInt(st.nextToken());
 
		StringBuilder sb = new StringBuilder();
 
		st = new StringTokenizer(br.readLine(), " ");
		
		for (int i = 0; i < N; i++) {
			int value = Integer.parseInt(st.nextToken());
 
			if (value < X)
				sb.append(value).append(' ');
		}
		System.out.println(sb);
	}
}

 

위의 것이 StringBuilder를 사용한 개선 답안이다.

String은 연산할 때마다 새로운 문자열 객체를 생성하는 반면, StringBuilder는 기존 객체의 크기를 늘리면서 값을 더해 속도가 더 빠르다. 

 

개선 답안 출처 : https://st-lab.tistory.com/38

'오늘의 문제' 카테고리의 다른 글

[백준JAVA] 1110번 - 더하기 사이클  (0) 2022.05.24
[백준 JAVA] 10952번 - A+B - 5  (0) 2022.05.24
[백준 JAVA] 11021번 A+B  (0) 2022.05.19
[백준] 2480번 주사위 세 개  (0) 2022.05.18
[백준] 2525번 오븐 시계  (0) 2022.05.18