이것저것 해보기🌼

[구름] 코딩테스트 대비 JAVA BufferedReader 사용법 본문

코딩테스트

[구름] 코딩테스트 대비 JAVA BufferedReader 사용법

realtree 2021. 7. 2. 11:41

 

구름 코딩테스트는 입력받는 부분도 구현을 해야하기 때문에 미리 BufferedReader 로 한줄씩 들어온 데이터를 어떻게 자를지에 대해 정리해둔다.

 

 

BufferedReader br 에 대한 선언부분과 readLine() 을 string에 저장하는 것까지는 기본으로 제공이 되는 것 같다.

만약 1 2 3 4 5 처럼 한줄에 여러 Integer가 있고 이를 Integer 배열에 저장하고 싶다면 아래와 같이

String.split() 함수를 사용해 띄어쓰기 단위로 문자열을 나누면 된다.

이에 대한 값들은 String으로 저장되기 때문에 Integer.parseInt 함수로 정수형 변환 과정도 필요하다.

 

1
2
3
4
5
String str = br.readLine();
String[] split = str.split(" ");
for(int i=0; i<N;i++){
    input[i] = Integer.parseInt(split[i]);
}
cs

 

 

구름 홈페이지에 가니 미리 환경을 체크해볼수 있게 제공된다.

 

https://devth.goorm.io/

 

구름DEVTH - 국내에서 가장 많이 사용 중인 1등 클라우드 코딩 테스트

구름DEVTH는 개발자 채용 및 SW역량 평가를 위한 코딩 테스트 서비스 입니다. 실시간 감독 기능인 옵저뷰를 통해 부정행위 방지는 물론, 공정하고 안정적인 온라인 시험/비대면 평가를 진행할 수

devth.goorm.io

 

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
32
33
34
35
36
37
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;
class Main {
    public static void main(String[] args) throws Exception {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
 
        int N = Integer.parseInt(br.readLine());
 
        // 난이도의 문제 받기
        int[] questions = new int[N];
        
        String str = br.readLine();
        String[] split = str.split(" ");
        for(int i=0; i<N;i++){
            questions[i] = Integer.parseInt(split[i]);
        }
        
        Arrays.sort(questions);
        
        int count = 1;
        int before = questions[0];
        for(int i : questions){
            if(before != i)
                count++;
            else if (count == 3)
                break;
            before = i;
        }
        if(count < 3)
            System.out.print("NO");
        else
            System.out.print("YES");
        
        br.close();
    }
}
cs