단의 개발 블로그

없는 숫자 더하기 본문

Algorithm/JAVA

없는 숫자 더하기

danso 2024. 11. 3. 15:36

💡 문제

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

💡 제한 조건

  • 1 ≤ numbers의 길이 ≤ 9
    • 0 ≤ numbers의 모든 원소 ≤ 9
    • numbers 모든 원소는 서로 다릅니다.

 

입출력 예

 

 

입출력 예 설명

입출력 예 #1

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

입출력 예 #2

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

 

 풀이

class Solution {
    public int solution(int[] numbers) {
        int answer = 0;
        boolean[] find = new boolean[10];
        for(int n : numbers) {
            find[n] = true;
        }
        for(int i=0 ;i<find.length; i++) {
            if(!find[i]) {
                answer+=i;
            }
        }
        return answer;
    }
}
다른 사람 풀이를 보니 쉽게 푼 코드가 있었다. 
0~9까지 모두 더한 값 45를 numbers 배열을 순회하며 값을 빼주면 된다.
import java.util.*;
class Solution {
    public int solution(int[] numbers) {
        return 45 - Arrays.stream(numbers).sum();
    }
}

 

'Algorithm > JAVA' 카테고리의 다른 글

숫자 문자열과 영단어  (2) 2024.11.04
부족한 금액 계산하기  (0) 2024.11.04
최소직사각형  (1) 2024.11.03
성격 유형 검사하기  (0) 2024.11.02
숫자 짝궁  (0) 2024.11.02