728x90
없는 숫자 더하기
문제설명
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 = -1;
return answer;
}
}
문제풀이
이 문제는 한 번에 풀지 못하였다.
처음 문제를 접하였을 때는 배열부터 선언해야하나 한참을 헤매였다.
알고리즘 2일차인데 아직까지 프로그래밍적 사고가 한참 부족한 것 같다.
마인드셋부터 다시 한 번 다잡고 가야겠다.
다른 사람들의 문제풀이를 한 번 보고 개념을 이해한 후 다시 풀어보았다.
배열의 최대길이는 9(1~9), 배열이 길이는 랜덤하게 주어지고 변수값도 1부터 9까지의 수에서 랜덤하게 주어진다.
이 때 1~9까지의 숫자중에서 배열에 포함되지 않은 숫자들을 더해주면 되는 문제이다.
1~9까지 숫자들을 차례로 더하면 45라는 값이 나온다.
고로 먼저 int sum을 45로 선언해주고, for문을 돌면서 i번째의 numbers 배열의 i번째 값을 sum에서 차례로 빼주면
남는 값이 정답이 된다.
Solution.java
class Solution {
public int solution(int[] numbers) {
int sum = 45;
for(int i = 0; i < numbers.length; i++){
sum -= numbers[i];
}
return sum;
}
}
728x90
'🤖Algorithm' 카테고리의 다른 글
[프로그래머스] 행렬의 덧셈 Java (0) | 2022.07.18 |
---|---|
[프로그래머스] 핸드폰 번호 가리기 Java (0) | 2022.07.18 |
[프로그래머스] 평균 구하기 Java (0) | 2022.07.16 |
[프로그래머스] 음양 더하기 Java (0) | 2022.07.16 |
[프로그래머스] 문자열을 정수로 바꾸기 Java (0) | 2022.07.16 |