class Solution {
public boolean[] prime;
public int solution(int n) {
int answer = 0;
prime = new boolean[n+1];
checkPrime(n);
for(int i=1; i<=n; i++) {
if(!prime[i]) { answer++; }
}
return answer;
}
public void checkPrime(int n) {
prime[0] = true; prime[1] = true;
for(int i=2; i*i<=n; i++) {
if(!prime[i]) {
for(int j=i*i; j<=n; j+=i) { prime[j] = true; }
}
}
}
}
'Problem Solving > Programmers' 카테고리의 다른 글
[Level 1] 이상한 문자 만들기 (0) | 2022.03.24 |
---|---|
[Level 1] 시저 암호 (0) | 2022.03.24 |
[Level 1] 문자열 내림차순으로 배치하기 (0) | 2022.03.24 |
[Level 1] 문자열 내 p와 y의 개수 (0) | 2022.03.24 |
[Level 1] 문자열 내 마음대로 정렬하기 (0) | 2022.03.24 |