☕Language: Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
class Solution {
static int answer = 0;
public int solution(int[] nums) {
// 1. 3개의 수를 더했을 때 소수가 되는 경우의 개수
for(int i=0; i<nums.length-2; i++) {
for(int j=i+1; j<nums.length-1; j++) {
for(int k=j+1; k<nums.length; k++) {
int sum = nums[i] + nums[j] + nums[k];
isPrime(sum);
}
}
}
return answer;
}
public static void isPrime(int i) {
for(int j = 2; j<=(int) Math.sqrt(i); j++) {
if(i%j==0) return;
}
answer++;
}
}
|
🤔 해설
1. for(int j = 2; j<=(int) Math.sqrt(i); j++) { ... }
- 약수는 대칭 관계를 갖으므로 제곱근까지만 소수 확인
🔗 소스 코드
GitHub
'Computer > Algorithm_Java' 카테고리의 다른 글
[BaekJoon] 15650번 N과 M (2) 문제 풀이 (Success) (0) | 2023.09.20 |
---|---|
[Programmers] 나누어 떨어지는 숫자 배열 (Success) (0) | 2023.09.19 |
[BaekJoon] 15649번 N과 M (1) 문제 풀이 (Success) (0) | 2023.09.17 |
[Programmers] 같은 숫자는 싫어 (Success) (0) | 2023.09.16 |
[Programmers] 가운데 글자 가져오기 (Success) (0) | 2023.09.15 |