// Operating Sieve(1/2)
for (int i = 2; i <= Math.sqrt(A.length); i++) {
if (A[i] == 0) {
continue;
}
for (int j = i + i; j < A.length; j = j + i) {
A[j] = 0;
}
}
// Operating Counter(2/2)
int count = 0;
for (int i = 2; i < 10000001; i++) {
if (A[i] != 0) {
long temp = A[i];
while ((double)A[i] <= (double)Max / (double)temp) {
if ((double)A[i] >= (double)Min / (double)temp) {
count++;
}
temp = temp*A[i];
}
}
}
sieve를 작동시켜 소수 Array인 temp = A[i] 가 얻어졌다
그리고 temp는 counter를 cover하기위한 인자로 사용되며,
Ouput Extractinc Cable은 결국 Counter를 추출한다
'Hard deck > Deep dive' 카테고리의 다른 글
공간의 끝 / While and For space (0) | 2022.08.03 |
---|---|
for / if / while : 각 공간의 사용 구분 (0) | 2022.08.02 |
코드를 작성할 때 가장 먼저 해야되는 것 : 시행공간 (0) | 2022.08.02 |
Phase : 인자를 N과 A.length 로 나눠서 쓰기 (0) | 2022.08.02 |
Fast Recovery (0) | 2022.08.02 |