ホームページ > バックエンド開発 > C++ > 数値の因数の最小和を見つけるCプログラムはありますか?

数値の因数の最小和を見つけるCプログラムはありますか?

WBOY
リリース: 2023-08-27 11:53:12
転載
790 人が閲覧しました

数値の因数の最小和を見つける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;
}
ログイン後にコピー

以上が数値の因数の最小和を見つけるCプログラムはありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート