C程序找出一个因子的最小和?
该程序查找一个因子的最小和。解决此问题的逻辑是找到所有因素集并将其相加。对于每组因素,我们都会做同样的事情,然后将所有因素进行比较。然后找到所有这些和的最小值。
Input: n=12 Output: 7
说明
首先找到数量为n的因子,然后将它们求和并尝试使总和最小。以下是用不同的方法分解因子12和因子总和的不同方法。
12 = 12 * 1 = 12 + 1 = 13 12 = 2 * 6 = 2 + 6 = 8 12 = 3 * 4 = 3 + 4 = 7 12 = 2 * 2 * 3 = 2 + 2 + 3 = 7 Therefore minimum sum is 7
示例
#include<iostream>
using namespace std;
int main() {
int n = 12;
int sum = 0;
for (int i = 2; i * i <= n; i++) {
while (n % i == 0) {
sum += i;
n /= i;
}
}
sum += n;
cout << sum;
return 0;
}热门推荐
10 儿子立冬祝福语简短独特
11 对当兵的祝福语简短
12 侄儿高考试祝福语简短
13 伴郎红包祝福语朋友简短
14 媳妇生日简短祝福语朋友
15 公司年会祝福语简短最好
16 元旦感恩祝福语简短大全
17 红包祝福语简短10字
18 周六早晨祝福语简短