실력 향상 일지/프로그래머스

[Java] 없는 숫자 더하기

juniordev 2022. 10. 26. 23:16

문제 설명 및 입출력 예시

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

제한사항

     - 1 <= numbers의 길이 <= 9

        - 0 <= numbers의 모든 원소 <= 9

        - numbers의 모든 원소는 서로 다릅니다.

 

입출력 예

numbers result
[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해야 합니다.


코드 & 풀이과정

class Solution {
    public int solution(int[] numbers) {
        int answer = 0;

        for (int i = 0; i < numbers.length; i++) {
            answer += numbers[i];
        }

        return 45 - answer;
    }
}

어차피 1부터 9까지 숫자중에 있는걸 빼는것도 동일하다고 생각해서 일단 1 ~ 9를 모두 더한 후 answer을 빼주는 형식으로 진행해봤다.


 

회고

처음에는 배열을 List로 넣어서 정렬하고 뭐 어떻게 해보려 했다.

그러다 그냥 빼면 되는거 아닌가? 싶어서 1부터 9까지 모두 더한 수인 45에서 numbers에 있는 모든 숫자를 빼는 코드를 작성해보았다. 그랬더니 됀다;;


💻프로그래머스 문제 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/86051