본문 바로가기

CodingTest Exam/[C++] Algorithm Study

3. 진약수의 합 (it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비) ★☆☆☆☆

※ 진약수 : 자기 자신을 제외한 약수를 의미한다.

 

#include <iostream>
using namespace std;
int main(){
	int n, i, sum = 0; // 변수 선언 및 초기화
	cin>> n; // 입력
    
    // 결과 도출
	for(int i = 1; i < n; i++)
    {
		if(n % i == 0) // n을 i로 나눈 나머지가 0이라면 i는 n의 약수이다.
        {
			if(i == 1)
            {
				cout << i;
			}
			else
				cout << " + " << i;
			
			sum += i;
		}
	}
	
    // 결과 출력
	cout << " = " << sum;
	return 0;
}