C++で積と和の差が与えられたN個の整数を検索します
2つの整数NとDがあるとします。N個の整数のセットを見つける必要があります。ここで、それらの合計と積の差はDと同じです。N=3と仮定します。 D =5の場合、出力は1、2、8になります。ここで、合計は1 + 2 + 8 =11で、積は1 * 2 * 8 =16で、16と11の差は5です。
この問題を解決する必要があります。 1つのトリッキーな方法を使用します。ここでは、N–2の1の数、1つの2、残りの1つの数N + Dを見つけようとします。したがって、合計、積、および差は-
になります。- 合計=(N – 2)* 1 + 2 +(N + D)=2 * N + D
- 製品=(N – 2)* 1 * 2 *(N + D)=2 * N + 2 * D
- 差=(2 * N + 2 * D)–(2 * N + D)=D
例
#include<iostream> using namespace std; void getNNumbers(int n, int d) { for (int i = 0; i < n - 2; i++) cout << 1 << " "; cout << 2 << " "; cout << n + d << endl; } int main() { int N = 5, D = 8; getNNumbers(N, D); }
出力
1 1 1 2 13
-
C++の平衡二分探索木で与えられた合計を持つペアを見つけます
平衡二分探索木とターゲット合計があるとすると、合計がターゲット合計に等しいペアであるかどうかをチェックするメソッドを定義する必要があります。この場合。二分探索木は不変であることに注意する必要があります。 したがって、入力が次のような場合 その場合、出力は(9 + 26 =35)になります。 これを解決するには、次の手順に従います- スタックs1、s2を定義する done1:=false、done2:=false val1:=0、val2:=0 curr1:=root、curr2:=root 無限ループ、実行- done1がfalseの場合、do − curr1が
-
CとC++の構造体の違い
ここでは、Cの構造体とC++の構造体の違いを確認します。 C ++構造は、ほとんどC++のクラスに似ています。 C構造体では、すべてのメンバーがパブリックですが、C ++では、デフォルトでプライベートです。その他の違いを以下に示します。 C構造体 C++構造 Cの構造体は、構造体の内部にメンバー関数を持つことはできません。 C ++の構造は、メンバー変数を持つメンバー関数を保持できます。 Cで構造データを直接初期化することはできません。 C++で構造データを直接初期化できます。 Cでは、構造体型変数を宣言するために「struct」キーワードを記述する必要があります。