728x90

[문제 설명]

정수 리스트 num_list와 찾으려는 정수 n이 주어질 때, num_list안에 n이 있으면 1을 없으면 0을 return하도록 solution 함수를 완성해주세요.

 

[입출력 예]

num_list n result
[1, 2, 3, 4, 5] 3 1
[15, 98, 23, 2, 15] 20 0

 

[차근 차근 생각해보기]

  1. num_list의 길이까지 돌면서
  2. num_list의 i번째 요소가 n과 같으면 1을 리턴해주고
  3. 그게 아니면 0을 리턴해준다.
  4.  

[결과]

class Solution {
    public int solution(int[] num_list, int n) {
        int answer = 0;
        for(int i = 0; i < num_list.length; i++){
            if(num_list[i] == n){
                return 1;
            }
        }
        return answer;
    }
}

 

[반성할 점]

  • 처음에 for문 안에 n이면 answer에 1을 넣어주고 아니면 0을 넣어주도록 코드를 작성했다.
  • 계속 오류가 나서 생각해보니 위와 같은 코드면 num_list가 끝날 때까지 answer의 값이 계속 바뀔 것이고
  • 만약 num_list의 마지막 요소가 n과 같으면 1이 리턴되겠지만
  • 마지막 요소가 n과 같지 않으면 0이 나올 것이기 때문에
  • n이 i번째의 요소와 같으면 바로 return 1을 해주는 것이 맞다고 생각하였다.
728x90

+ Recent posts