[프로그래머스(Programmers)][자바(java)] (Lv1) 없는 숫자 더하기 <월간코드챌린지3>

728x90

 

https://programmers.co.kr/learn/courses/30/lessons/86051

 

코딩테스트 연습 - 없는 숫자 더하기

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

programmers.co.kr

 

문제 풀이

 

import java.util.HashSet;

public class Solution {
	
	public static int solution(int[] numbers) {
		HashSet<Integer> hs = new HashSet<>();
		for (int i = 0; i < 10; ++i)
			hs.add(i);
		for (int n : numbers)
			hs.remove(n);
		int ans = 0;
		for (int n : hs)
			ans += n;
		return ans;
	}
}
import java.util.Arrays;

public class Solution {
	
	public static int solution(int[] numbers) {
		Arrays.sort(numbers);
		int ans = 0, l = numbers.length, n, m = 0;
		for (int i = 0; i < l; ++i) {
			n = numbers[i];
			while (m != n)
				ans += m++;
			m++;
		}
		while (m < 10)
			ans += m++;
		return ans;
	}
}

 

반응형