📌  相关文章
📜  C程序查找数量因子的最小和

📅  最后修改于: 2021-05-28 03:16:53             🧑  作者: Mango

给定一个数字,找出其因素的最小和。

例子:

Input : 12
Output : 7
Explanation: 
Following are different ways to factorize 12 and
sum of factors in different ways.
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

Input : 105
Output : 15
// CPP program to find minimum
// sum of product of number
#include 
using namespace std;
  
// To find minimum sum of
// product of number
int findMinSum(int num)
{
    int sum = 0;
  
    // Find factors of number
    // and add to the sum
    for (int i = 2; i * i <= num; i++) {
        while (num % i == 0) {
            sum += i;
            num /= i;
        }
    }
    sum += num;
  
    // Return sum of numbers
    // having minimum product
    return sum;
}
  
// Driver program to test above function
int main()
{
    int num = 12;
  
    cout << findMinSum(num);
  
    return 0;
}
输出:
7

有关更多详细信息,请参阅完整的文章“找到数量的最小因数总和”!

想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。