프로그래머스 - 코딩테스트 - Level1 - 소수 찾기
풀이
class Solution {
public int solution(int n) {
int answer = 0;
int count = 0;
int num = 0;
int plusNum = 0;
int[] arr = new int[n]; // 배열 선언
for(int i=2; i<=n; i++){
num = i;
plusNum = i;
if(arr[i-1] == 0){ // 배열 값이 0일 때만
for(int j=i; j<=n; j++){ // 소인수 찾기
if(i%j == 0){
count = j;
break;
}
}
if(count == i){
answer++;
}
while(true){
if(plusNum > n){
break;
}
arr[plusNum-1] = 1;
plusNum += num;
}
}
}
return answer;
}
}
결과