https://programmers.co.kr/learn/courses/30/lessons/12921
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 {
public int solution(int n) {
// 에라토스테네스의 체. 소수여부를 미리 판정해놓기
boolean[] arrNotPrime = new boolean[1000001];
for (int i = 2; i < arrNotPrime.length; i++) {
// 어느 수의 배수이면 arrNotPrime배열에 true체크 == 소수가 아니라는 뜻
if (arrNotPrime[i] == false) {
for (int j = 2; j * i < arrNotPrime.length; j++) {
arrNotPrime[j * i] = true;
}
}
}
// 소수이면 카운트
int answer = 0;
for (int i = 2; i <= n; i++) {
if (arrNotPrime[i] == false) {
answer++;
}
}
return answer;
}
}
Colored by Color Scripter
|
소수문제 오랜만!
'Algorithm > 프로그래머스' 카테고리의 다른 글
[프로그래머스]연습문제 : 문자열을 정수로 바꾸기 (level 1) (0) | 2019.11.06 |
---|---|
[프로그래머스]연습문제 : 수박수박수박수박수박수? (level 1) (0) | 2019.11.06 |
[프로그래머스]연습문제 : 서울에서 김서방 찾기 (level 1) (0) | 2019.11.06 |
[프로그래머스]연습문제 : 문자열 다루기 기본 (level 1) (0) | 2019.11.06 |
[프로그래머스]연습문제 : 문자열 내림차순으로 배치하기 (level 1) (0) | 2019.11.06 |
댓글