Maison  >  Article  >  développement back-end  >  Programme C pour trouver la plus petite somme de facteurs d'un nombre ?

Programme C pour trouver la plus petite somme de facteurs d'un nombre ?

WBOY
WBOYavant
2023-08-27 11:53:12752parcourir

Programme C pour trouver la plus petite somme de facteurs dun nombre ?

Ce programme est utilisé pour trouver la somme des plus petits facteurs d'un nombre. La logique pour résoudre ce problème est de trouver tous les ensembles de facteurs et de les additionner. Nous faisons la même chose pour chaque ensemble de facteurs, puis nous les comparons tous. Trouvez ensuite tous les minimums de ces sommes.

Input: n=12
Output: 7

Explication

Trouvez d'abord les facteurs du nombre n, puis additionnez-les et essayez de minimiser la somme. Voici les différentes façons de factoriser 12 et la somme des facteurs.

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

Exemple

#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;
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer