본문 바로가기
프로그래머스/0단계

[PCCE 기출문제] 6번 / 가채점

by 긴가우딘 2024. 5. 14.
class Solution {
    public String[] solution(int[] numbers, int[] our_score, int[] score_list) {
        int num_student = numbers.length;
        String[] answer = new String[num_student];

        for (int i = 0; i < num_student; i++) {
            if (our_score[i] == score_list[numbers[i]-1]) {
                answer[i] = "Same";
            }
            else {
                answer[i] = "Different";
            }
        }

        return answer;
    }
}

<디버깅 문제>

시도1. our_score[numbers[i]] == score_list[i];

→ IndexOutOfBoundException 에러 발생

일단 our_score부분을 건드리는게 아니라는 것은 확인

ousr_score가 score_list의 numbers번째인 것을 표현해야 한다

시도2. our_score[i] == score_list[numbers[i]];

→ 역시나 똑같은 에러 발생

number가 1이면 score_list[1]이 되는데 배열이기 때문에 하나씩 작게 구해주어야 한다

그래서 score_list[numbers[i-1]]로 변경하였는데 당연히 인덱스 에러

시도3. 질문하기 들어가서 힌트 봤다ㅜㅜ

score_list[numbers[i]-1]이라고 했으면 됐다

당연히 알고 있다고 생각하는 것을 생각못했을 때의 참담한 기분...

담부턴 꼭 생각하자!!!