문제 설명

0부터 9까지의 숫자 중 일부가 들어있는 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요.


제한사항
  • 1 ≤ numbers의 길이 ≤ 9
  • 0 ≤ numbers의 모든 수 ≤ 9
  • numbers의 모든 수는 서로 다릅니다.

입출력 예numbersresult
[1,2,3,4,6,7,8,0] 14
[5,8,4,0,6,7,9] 6

입출력 예 설명

입출력 예 #1

  • 5, 9가 numbers에 없으므로, 5 + 9 = 14를 return 해야 합니다.

입출력 예 #2

  • 1, 2, 3이 numbers에 없으므로, 1 + 2 + 3 = 6을 return 해야 합니다.

풀이코드

더보기
import java.util.*;

class Solution {
    public int solution(int[] numbers) {
        int answer = 0;
        ArrayList<Integer> list = new ArrayList<>(Arrays.asList(0,1,2,3,4,5,6,7,8,9));
        
        for(int i=0; i<numbers.length; i++) {
            list.remove(Integer.valueOf(numbers[i]));
        }
        
        for(int num : list) {
            answer += num;
        }
            
        return answer;
    }
}

풀이방법

0~9 중에 포함되어있지않은 숫자들을 찾아서 더해주면된다.

 

  1. 0~9까지들고있는 리스트 선언
  2. 선언해준 리스틑에서 배열 값들 제거
  3. 리스트에 남은 값들 더해주고 리턴

'알고리즘 > Programmers' 카테고리의 다른 글

[Programmers] 폰켓몬  (0) 2021.11.28
[Programmers] 약수의 개수와 덧셈  (0) 2021.11.26
[Programmers] 신규 아이디 추천  (0) 2021.11.24
[Programmers] 크레인 인형뽑기  (0) 2021.11.21
[Programmers] 소수 만들기  (0) 2021.11.20