ZeroJudge I025: 真因數和 (小 n)

真因數是指一個自然數除自身以外的因數。如 6 的因數有「1、2、3、6」,真因數是「1、2、3」。

給你一個正整數,求它的真因數和

範例測資

範例輸入範例輸出
輸入只有一行,含有一個正整數 N (1 ≤ N ≤ 65535)。輸出 N 的真因數和。
66
1216

解題思路

使用 For迴圈 從 1 跑到 N – 1 (因為不能包含 N 自己),因為數字不大所以可以直接一個一個判斷所有 N 的因數並將所有因數加在一起,最後輸出因數和即可。

範例程式碼-ZeroJudge I025: 真因數和 (小 n)

#include <iostream>
using namespace std;

int main() {
    cin.sync_with_stdio(0);
    cin.tie(0);
    int N;
    cin >> N;
    int ans = 0;
    for (int i = 1; i<N; i++)
    {
        if (N % i == 0) ans += i;
    }
    cout << ans << "\n";
}

//Z.O.J. I025
//Dr. SeanXD

發佈留言