0~9까지라길래 새로운 배열을 만들어서 해보려했다.
int[] num = {0,1,2,3,4,5,6,7,8,9} 해서 하나씩 비교하고 없으면 어떻게 해보려했는데
생각보다 너무 안됐다.
그래서 노트를 꺼내서 생각해보자마자
0~9까지 더한수에서 인수로 주어진numbers 의 원소들의 합을 빼면 되는구나! 싶었다.
0~9의 합은 45. 예를 들어 numbers = {5,8} 이면 45 - 13하면 되는거였다.
뻘짓을 하고있었다 나는...
크흠
그래서 내 풀이를 보자면
public static int solution(int[] numbers) {
int answer = 0;
for(int i = 0; i < 10; i++){
answer += i;
}
for(int j = 0; j < numbers.length; j++){
answer -= numbers[j];
}
return answer;
}
허무하지만 이게 뭐 알고리즘의 매력인가 싶다.
'Java > 알고리즘' 카테고리의 다른 글
제일 작은 수 제거하기 (0) | 2024.01.19 |
---|---|
핸드폰 번호 가리기 (0) | 2024.01.18 |
나누어 떨어지는 숫자 배열(향상된 for문 꿀팁 idx++) (0) | 2024.01.16 |
서울에서 김서방 찾기, "==" 와 ".equals()"의 차이 (0) | 2024.01.12 |
음양 더하기 (0) | 2024.01.12 |