뭉지(moonz) 2021. 10. 3. 20:48
반응형

[문제]

 

 

[나의 생각]

Scanner 라이브러리를 이용해서 해결할 수도 있다. BufferedReader를 사용했을 때 조금 더 시간이 덜 걸린다는 사실!

본인은 두번째 줄의 입력문에 대해서도 for문을 사용할 수 있다 생각하지 못해서 헤맸다. 

StringBuilder 변경 가능한 문자열이다. (String은 변경 불가능)

String을 합치는 작업 시에 유용하게 쓰인다.

 

방법

1. StringBuilder의 객체 생성

2. StringBuilder의 객체의 append()로 연결하고자하는 문자열을 붙인다.

-> 변경 가능한 문자열 완성!

 

import java.util.*;
import java.io.*;

public class baekjoon10871 {
    public static void main(String[] args) throws IOException {
        StringTokenizer st;
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();

        st = new StringTokenizer(br.readLine(), " ");
        int n = Integer.parseInt(st.nextToken());
        int x = Integer.parseInt(st.nextToken());

        st = new StringTokenizer(br.readLine(), " ");

        for (int i=0; i<n; i++) {
          int num = Integer.parseInt(st.nextToken());
          if (num<x) sb.append(num + " ");
        }
        
        System.out.println(sb);
    }
}

 

채점 현황

 

 

참고 : 깃허브 코드

반응형