-
C++で指定されたサイズの重複しない2つのサブ配列の最大合計
この問題では、正の整数の配列と数kが与えられます。私たちのタスクは、指定されたサイズ(k)の2つの重複しないサブ配列の最大合計を見つけるプログラムを作成することです。 したがって、基本的に、合計が最大でサイズがkの2つの重複しない(別個の)サブ配列を2つ印刷します。 問題を理解するために例を見てみましょう 入力 − array = {7, 1, 6, 9, 2} , k = 2 出力 − {7, 1} , {6, 9} 説明 − all subarrays of size 2. {7, 1} : sum = 7+1 = 8 {1, 6} : sum = 1+6 = 7 {6,
-
C++の配列の最大トリプレット合計
この問題では、配列が与えられます。私たちのタスクは、配列内の最大のトリプレット合計を見つけるプログラムを作成することです。つまり、合計が最大である3つの要素のセットを見つけます。 問題を理解するために例を見てみましょう 入力 −配列={4、6、1、2} 出力 − 12 説明 − all triplets are : (4, 6, 1) = 4+6+1 = 11 (4, 6, 2) = 4+6+1 = 12 (4, 1, 2) = 4+6+1 = 7 (6, 1, 2) = 4+6+1 = 9 The maximum triplet sum is 12 この問題を解決するための簡
-
C++のサイズKのすべてのサブ配列の最大一意要素
この問題では、整数の配列と整数Kが与えられます。私たちのタスクは、サイズKのすべてのサブ配列で重複のない最大の一意の要素を見つけるプログラムを作成することです。 問題を理解するために例を見てみましょう 入力 − array = {4, 1, 1, 3, 3} k = 3 出力 − 4 3 1 説明 − Sub-array of size 3 Subarray {4, 1, 1}, max = 4 Subarray {1, 1, 3}, max = 3 Subarray {1, 3, 3}, max = 1のサブ配列 この問題を解決する簡単な方法の1つは、2つのループを実行してサ
-
| arr [0] – arr [1]-+ | arr [1] –arr[2]-+…+|arr [n – 2] – arr [n –1]の最大値-要素が1からC++のn
この問題では、範囲[1、n]のn個の整数の配列が与えられます。私たちのタスクは、| arr [0] – arr [1]-+ | arr [1] –arr[2]-+…+|arr [n – 2] –arr[の最大値を見つけるプログラムを作成することです。 n –1]。 問題を理解するために例を見てみましょう 入力 −配列={1、2、3} 出力 − 3 説明 − max sum is |1-3|+|2-1| = 3 この問題を解決するための簡単なアプローチは、配列からすべての順列を作成することです。そして、順列からすべての値の最大値を見つけます。より効果的な方法は、nの各値のすべての最
-
| arr [i] – arr [j]-+ | i –j|の最大値C++で
この問題では、n個の整数の配列が与えられます。私たちのタスクは、| arr [i] -arr[j]|の最大値を見つけるプログラムを作成することです。 + |i-j|。 問題を理解するために例を見てみましょう 入力 −配列={4、1、2} 出力 − 4 説明 − |arr[0] - arr[1]|+|0-1| = |4-1| + |-1| = 3+1 = 4 |arr[0] - arr[2]|+|0-2| = |4-2| + |-2| = 2+2 = 4 |arr[1] - arr[2 ]|+|1-2| = |1-2| + |1-2| = 1+1 = 2 この問題を解決するための
-
C++での特定の配列のarr[i]%arr[j]の最大値
この問題では、n個の要素の配列が与えられます。私たちのタスクは、特定の配列のarr [i]%arr[j]の最大値を見つけるプログラムを作成することです。 したがって、基本的には、配列の2つの要素を分割しながら、最大の余りの値を見つける必要があります。 問題を理解するために例を見てみましょう 入力 −配列{3、6、9、2、1} 出力 − 6 説明 − 3%3 = 0; 3%6 = 3; 3%9 = 3; 3%2 = 1; 3%1 = 0 6%3 = 0; 6%6 = 0; 6%9 = 6; 6%2 = 0; 6%1 =0 9%3 = 0; 9%6 = 3; 9%9 = 0 9%2
-
C++の配列のすべてのトリプレット間のXORの最大値
この問題では、整数の配列が与えられます。私たちのタスクは、配列のすべてのトリプレットの中でXORの最大値を作成することです。 問題を理解するために例を見てみましょう 入力 −配列={5、6、1、2} 出力 − 6 説明 − All triplets are: 5^6^1 = 2 5^6^2 = 1 5^1^2 = 6 6^1^2 = 5 この問題を解決するための直接的なアプローチは、考えられるすべてのトリプレットのXORを見つけて、すべてのトリプレットの最大値を出力することです。配列内に膨大な数の要素がある配列を操作する場合、これは効果的ではありません。 最大のXORを見つけ
-
C++のマトリックスの最後の行の任意の要素で終了する最大ウェイトパス
この問題では、整数nと、セルの重みを含むサイズnXnの行列が与えられます。私たちのタスクは、行列の最後の行の任意の要素で終わる最大の重みパスを見つけるプログラムを作成することです。パスを見つける間、トラバーサルは左上(0,0)から始まり、有効な移動は下向きで斜めになりますが、左移動は許可されません。 問題を理解するために例を見てみましょう 入力 − n = 3 Mat[3][3] ={ {4, 3, 1} {5, 8, 9} {6, 7, 2}} 出力 − 19 説明 − All paths that
-
C++での特定の文字列の最大重み変換
問題の説明 AとBのみで構成される文字列があるとします。任意の文字を切り替えることで、指定された文字列を別の文字列に変換できます。したがって、与えられた文字列の多くの変換が可能です。タスクは、最大の重み変換の重みを見つけることです。 刺し傷の重さは、以下の式を使用して計算されます- Weight of string = Weight of total pairs + weight of single characters - Total number of toggles. 2つの連続する文字は、異なる場合にのみペアと見なされます。 単一のペアの重み(両方の文字が異なります)=
-
C++での二分木の最大幅
問題の説明 二分木が与えられた場合、与えられた木の最大幅を取得する関数を記述します。ツリーの幅は、すべてのレベルの幅の最大値です。 ツリーの下を検討する- 10 / \ 7 4 / \ \ 9 2 1 / \ 2 5 1. Width at leve
-
C++で1からnまでのK個の数値を使用した最大XOR
この問題では、2つの正の整数nとkが与えられます。私たちのタスクは、最大X数を使用して1からnまでの最大XORを見つけることです 問題を理解するために例を見てみましょう 入力 − n =5、k =2 出力 − 7 説明 − elements till 5 is 1, 2, 3, 4, 5 Selecting all XOR pairs: 1^2 = 3, 1^3 = 2, 1^4 = 5, 1^5 = 4 2^3 = 4, 2^4 = 6, 2^5 = 7 3^4 = 7, 3^5 = 6 4^5 = 1 The maximum here is 7. この問題を解決するために、
-
C++の範囲からのペアの最大XOR値
問題の説明 範囲[L、R]が与えられた場合、2つの整数のすべての可能な選択肢の中でXORが最大になるように、この範囲内の2つの整数を見つける必要があります 指定された範囲がL=1およびR=21の場合、-31は15および16のXORであり、範囲内で最大であるため、出力は31になります。 アルゴリズム 1. Calculate the (L^R) value 2. From most significant bit of this value add all 1s to get the final result 例 #include <bits/stdc++.h> using na
-
C++のマトリックスの最大XOR値
この問題では、サイズnXnの行列が与えられます。私たちのタスクは、完全な行または完全な列の最大XOR値を計算するプログラムを作成することです。 問題を理解するために例を見てみましょう 入力 − N = 3 mat[N][N] = {{4, 9, 1} {2, 8, 3} {10, 12, 11}} 出力 − 13 説明 − Row1: 4^9^1 = 12 Row2: 2^8^3 = 9 Row3: 10^12^11 = 13 Col1: 4^2^10 = 12 Col2: 9^8^12 = 13 Col3: 1^3^11 = 9 ここでは、すべての行と列のXORを計算し、それ
-
C++での行列の平均と中央値
この問題では、サイズn*nの2D配列が与えられます。私たちのタスクは、C++で行列の平均と中央値を出力するプログラムを作成することです。 平均 設定された日付の平均です。マトリックスの平均は、マトリックスのすべての要素の平均です。 平均 =(行列のすべての要素の合計)/(行列の要素の数) 中央値 ソートされたデータセットの真ん中の要素です。このためには、マトリックスの要素を並べ替える必要があります。 中央値は次のように計算されます nが奇数の場合、中央値=行列[n / 2] [n / 2] nが偶数の場合、中央値=((matrix [(n-2)/ 2] [n-1])+(mat
-
C++の配列の範囲の平均
この問題では、n個の整数の配列といくつかのm個のクエリが与えられます。私たちの仕事は、クエリによって与えられた範囲の平均の整数値(切り捨て)を計算するプログラムを作成することです。 問題を理解するために例を見てみましょう 入力 − array = {5, 7, 8, 9, 10} m = 2; [0, 3], [2, 4] 出力 − 7 9 この問題を解決するために、2つの方法があります。1つは直接で、もう1つはプレフィックス合計を使用します。 直接的なアプローチでは、クエリごとに、範囲の開始インデックスから終了インデックスまでループします。そして、配列のすべての整数を加算し、カ
-
C++で2つの容器と無限の給水を使用して1リットルを測定します
この問題では、容量xとyの2つの船と、無限の水の供給が与えられます。私たちの仕事は、1つの容器で正確に1リットルを計算できるプログラムを作成することです。 xとyが共素数であるという条件が与えられます。 コプライム 互いに素、互いに素とも呼ばれます は、最大公約数が1である2つの数です。つまり、これは彼らのgcd(最大公約数 )は1です。 ここで、容量xの2つの容器V1と容量yのV2があるとします。これらの2つの容器を使用して1リットルを測定するには、最初の容器に給水を充填してから、2番目の容器に注ぎます。このプロセスは、容器V1に1リットルの水が入るまで続けます。 問題を理解するために例
-
C++でのK個の追加整数の後の中央値
この問題では、n個の整数の配列が与えられ、その配列にK個の要素を追加して、結果の配列の中央値を見つけます。条件を考えると、N+kは奇数です。 問題を理解するために例を見てみましょう 入力 − array = {23, 65, 76, 67} ; k =1 出力 − 67 この問題を解決するために、指定された要素を昇順で並べ替えてから、配列の最後にk個の要素を追加します。つまり、k個大きい要素を取得します。 n+kが奇数であるという条件が与えられます。したがって、中央値は、式(n + k)/ 2を使用して計算できます。 。 例 中央値を見つけるためのプログラム #include
-
C ++の整数ストリーム(整数の実行)の中央値
問題の説明 整数がデータストリームから読み取られると仮定します。効率的な方法でそのように読み取られた要素の中央値を見つけます 中央値-10 中央値-15 中央値-20など... アルゴリズム 1. Use a max heap on left side to represent elements that are less than effective median, and a min heap on right side to represent elements that are greater than effective median 2. After
-
C++で実行中の数値ストリームの中央値
この問題では、整数を継続的に読み取っているデータストリームが与えられます。私たちのタスクは、要素を読み取り、これらの要素の中央値を計算するプログラムを作成することです。 中央値 配列のは、ソートされたシーケンスの中央の要素です(昇順または降順の場合があります)。 中央値の計算 奇数カウントの場合、中央値は中央値です 偶数カウントの場合、中央値は2つの中間要素の平均です 問題を理解するために例を見てみましょう 入力 − 3、65、12、20、1 各入力で Input - 3 : sequence -(3) : median - 3 Input - 65 : sequence -
-
XORがC++で奇数である隣接ノードのすべてのペアをカウントします
このチュートリアルでは、XORが奇数である隣接ノードのペアの数を見つけるプログラムについて説明します。 このために、バイナリツリーが提供されます。私たちのタスクは、XORが奇数である隣接する要素のペアの数を数えることです。 例 #include <iostream> using namespace std; //node structure of tree struct Node { int data; struct Node *left, *right; }; //finding the pairs whose XOR //i