algorithm

더블릿|dovelet - 3번째 계단 - 완전수/complete

블루건 2016. 8. 25. 17:10

문제


프로그램 명: complete
제한시간: 1 초

완전수란 자신을 제외한 약수의 합이 자신이 되는 수를 완전수라 한다.

6 은 완전수이다. 6 의 약수는

1 2 3 6

이 중 자신을 제외한 약수의 합 1 + 2 + 3 = 6 즉 6 은 완전수이다.

입력

1000 이하의 자연수를 입력받는다.

출력

완전수이면 yes , 아니면 no 를 출력한다.

입출력 예

입력

6

출력

yes

입력

8

출력

no


풀이


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
 
using namespace std;
 
int main()
{
    int n, sum = 0;
    cin >> n;
 
    for (int i = 1; i < n; i++)
    {
        if (n%i == 0)
            sum += i;
    }
 
    if (sum == n)
        cout << "yes";
    else
        cout << "no";
 
    return 0;
}
cs