해맑은욱 2019. 9. 5. 16:47
*약수의 합 
 
#include <iostream>
 
using namespace std
 
int solution(int n) { 
    int answer = 0
     
/**case1*/ O(n) 
    for(int i = 1; i <= n; i++
    { 
        if(n % i == 0
            answer += i; 
    } 
     
/**case2*/ O(logn) 
    for(int i = 1; i * i <= n; i++
    { 
        if(n % i == 0
            answer = answer + i + n/i; 
        if(i * i == n) 
            answer = answer - i; 
    } 
     
    return answer; 
cs