기술 블로그

효율적인 약수의 개수를 찾는 알고리즘 본문

알고리즘

효율적인 약수의 개수를 찾는 알고리즘

parkit 2018. 10. 14. 18:06
728x90
반응형

BOJ 13225번 Divisors : http://hsdevelopment.tistory.com/109


BOJ 13226번 Divisors Again : http://hsdevelopment.tistory.com/108



10,000,000 이하의 자연수에 대한 약수의 '개수'를 찾는 알고리즘.



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#define MAX 10000000
 
int Divisors[MAX + 1= { 0, };
 
void getFactorsBrute()
{
    memset(Divisors, 0sizeof(Divisors));
 
    for (int i = 1; i <= MAX; i++)
    {
        for (int j = i; j <= MAX; j += i)
        {
            ++Divisors[j];
        }
    }
}
cs





1
2
3
4
5
6
7
8
9
10
11
12
13
14
13
Divisors[1= 1
Divisors[2= 2
Divisors[3= 2
Divisors[4= 3
Divisors[5= 2
Divisors[6= 4
Divisors[7= 2
Divisors[8= 4
Divisors[9= 3
Divisors[10= 4
Divisors[11= 2
Divisors[12= 6
Divisors[13= 2
cs


728x90
반응형