[미해결][백준:10816] 숫자 카드 2 (JAVA)

dev_kiiim·2022년 12월 20일
0

CODING TEST

목록 보기
19/23
post-thumbnail

어제 퇴근하고 깜빡 잠이 들었는데 아침까지 자버려서 어제는 공부를 안하게 돼버렸다,,
오늘은 이분탐색 두번째 문제를 풀어보았다.

N개의 정수 중에서 M개의 정수와 일치하는 정수가 몇개인지 확인하는 문제였다.


public static void main(String[] args) throws IOException {
    BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
    int N = Integer.parseInt(bf.readLine());
    int[] n = new int[N];
    StringTokenizer st = new StringTokenizer(bf.readLine(), " ");
    for(int i=0; i<N; i++) {
        n[i] = Integer.parseInt(st.nextToken());
    }
    Arrays.sort(n);
    int M = Integer.parseInt(bf.readLine());
    int[] m = new int[M];
    st = new StringTokenizer(bf.readLine(), " ");
    for(int i=0; i<M; i++){
        m[i] = Integer.parseInt(st.nextToken());
    }

    int[] out = new int[M];
    for(int i=0; i<M; i++){
        int cnt = 0;
        for(int j=0; j<N; j++){
            if(m[i] == n[j]){
                cnt++;
            }
        }
        out[i] = cnt;
    }

    for(int i=0; i<M; i++){
        System.out.print(out[i] + " ");
    }
}

일단 생각나는 대로 푼 코드이다.
이분탐색 알고리즘 문제를 찾아서 풀기 시작했는데,, 이분탐색을 쓰지 않는,,,,😂
결국 시간초과로 틀렸는데 아무리 생각해도 이분탐색으로 어떻게 풀어야 할 지 감이 안와서
결국 검색찬스를 사용했다.

하지만 접근 방법조차 생각나지 않아서인지,,, 아직 이분탐색과 많이 낯설은 것인지,,
다른 분들의 코드와 설명을 봐도 전혀,,,모르겠,,는,,,,,,🙁
이분탐색,,, 너무 어렵다,, 아직 실버4일 뿐인데 너무 어려운 이분탐색.
좀 더 공부해보고 다시 풀어보기로 하자
꼭.

0개의 댓글