반응형
풀이
주어진 숫자 중에서 3개의 숫자를 더한 값이 소수인 경우의 개수를 구하는 것
1. 배열에서 3개의 숫자를 중복 없이 찾는 기능
2. 소수인지 아닌지를 판별하는 기능
1번의 기능은 3중 for문을 이용해서 해결하였고
2번의 소수 판별은 2부터 num-1 까지 나누어서
나누어질 경우 소수가 아니고
나누어지면 소수인 것으로 해결하였다.
코드
class Solution {
public int solution(int[] nums) {
int count = 0;
for (int i = 0; i < nums.length; i++) {
for (int j = i + 1; j < nums.length; j++) {
for (int k = j + 1; k < nums.length; k++) {
if (isPrime(nums[i] + nums[j] + nums[k])) {
count++;
}
}
}
}
//System.out.println(count);
return count;
}
public static boolean isPrime(int num) {
boolean result = true;
for (int i = 2; i < num; i++) {
if (num % i == 0) {
result = false;
break;
}
}
return result;
}
}
출처
반응형
'알고리즘 > 프로그래머스' 카테고리의 다른 글
프로그래머스 4주차 직업군 추천하기 자바 java (0) | 2021.08.25 |
---|---|
프로그래머스 2주차 상호 평가 자바 java (0) | 2021.08.24 |
프로그래머스 숫자 문자열과 영단어 자바 java (0) | 2021.08.19 |
프로그래머스 실패율 자바 java (0) | 2021.06.16 |
프로그래머스 약수의 개수와 덧셈 자바 java (0) | 2021.06.15 |
댓글