合計がC++で指定されたNに等しい最大素数
この問題では、番号nが与えられます。私たちのタスクは、合計が与えられたNに等しい素数の最大数を見つけることです。
ここでは、加算されたときにその数と等しくなる素数の最大数を見つけます。
素数は、それ自体または1で割ることができる数です。
問題を理解するために例を見てみましょう-
入力 − n =9
出力 − 4
説明 −
9 can be repressed as the sum of prime numbers in the following ways: 2, 2, 2, 3 3, 3, 3 2, 2, 5 2, 7 Out of these the maximum number of primes used is 4.
使用される素数の最大数は、合計を作成するために追加できる最小の素数の数に基づきます。
したがって、最小の素数は2であり、連続する大きい素数は3であり、これは奇数です。
したがって、合計を計算するときに2と3のみを使用すると、カウントが最大になります。これに基づいて、2つのケースで問題を分割できます-
ケース1 − Nが偶数の場合、合計のすべての素数は2になります。したがって、カウントはn/2になります。
ケース2 − Nが奇数の場合、合計のすべての素数は2になりますが、1は3になります。したがって、カウントは(n-1 / 2)になります。
例
合計がC++で指定されたNに等しい最大素数を見つけるプログラム
#include <iostream> using namespace std; int maxPrimeCount(int n){ //For odd case the result will same as (n-1)/2 return n / 2; } int main(){ int n = 9; cout<<"The maximum number of primes whose sum is equal to "<<n<<" is "<<maxPrimeCount(n); return 0; }
出力
The maximum number of primes whose sum is equal to 9 is 4
-
合計がC++の指定された値xに等しい2つのBSTからペアをカウントします
入力として2つの二分探索木と変数xが与えられます。目標は、ノードの値の合計がxに等しくなるように、各ツリーからノードのペアを見つけることです。 BST_1からノード1を取得し、BST_2からノード2を取得して、両方のデータ部分を追加します。 sum=xの場合。インクリメントカウント。 例を挙げて理解しましょう。 入力 出力 −合計が特定の値xに等しい2つのBSTからのペアの数は− 1 説明 −ペアは(8,6) 入力 出力 −合計が特定の値xに等しい2つのBSTからのペアの数は− 2 説明 −ペアは(5,15)と(4,16) 以下のプログラムで使用されているアプ
-
指定された数値の桁を合計するC++プログラム
これは、C++言語で桁の合計を計算する例です。 例 #include<iostream> using namespace std; int main() { int x, s = 0; cout << "Enter the number : "; cin >> x; while (x != 0) { s = s + x % 10; x = x / 10;