-
C ++を使用したSTL関数を使用して、std::vector内の重複する単語を検索して印刷します。
文字列のリストがあると考えてください。リストに重複する文字列がいくつかあります。どの文字列が複数回発生しているかを確認する必要があります。文字列リストが[“ Hello”、“ Kite”、“ Hello”、“ C ++”、“ Tom”、“ C ++”]のようなものであるとします。 ここではハッシュ手法を使用するため、空のハッシュテーブルを作成し、各文字列をトラバースします。各文字列について、sはすでにハッシュに存在し、文字列を表示します。それ以外の場合は、ハッシュに挿入します。 例 #include<iostream> #include<vector> #includ
-
C ++を使用して、隣接する2つの辺のベクトルが与えられている場合は、平行四辺形の領域を見つけます。
$ x \ hat {i} + y \ hat {j} + z \ hat {k} $の形式で平行四辺形の2つの隣接する辺に2つのベクトルがあるとします。私たちのタスクは、平行四辺形の領域を見つけることです。平行四辺形の面積は、2つのベクトルの外積の大きさです。 (|A×B|) $$ \ rvert \ vec {A} \ times \ vec {B} \ rvert =\ sqrt {\ lgroup y_ {1} * z_ {2} -y_ {2} * z_ {1} \ rgroup ^ {2} + \ lgroup x_ {1} * z_ {2}-x_ {2} * z_ {1} \ r
-
C ++を使用して2つの隣接する辺の2つのベクトルが与えられている場合、三角形の領域を見つけます
$ x \ hat {i} + y \ hat {j} + z \ hat {k} $の形式で三角形の2つの隣接する辺に2つのベクトルがあるとします。私たちのタスクは、三角形の領域を見つけることです。三角形の面積は、2つのベクトルの外積の大きさです。 (| A x B |) $$ \ frac {1} {2} \ rvert \ vec {A} \ times \ vec {B} \ rvert =\ frac {1} {2} \ sqrt {\ lgroup y_ {1} * z_ {2}- y_ {2} * z_ {1} \ rgroup ^ {2} + \ lgroup x_ {1}
-
C ++でceil()関数を使用せずにa/bのceilを検索します。
ここでは、ceil()関数を使用せずにa/bの上限値を取得する方法を説明します。 a =5、b =4の場合、(a / b)=5/4。天井(5/4)=2。これを解決するには、次の簡単な式に従うことができます- $$ ceil \ lgroup a、b \ rgroup =\ frac {a + b-1} {b} $$ 例 #include<iostream> using namespace std; int ceiling(int a, int b) { return (a+b-1)/b; } int main() { cout
-
C ++を使用して、マトリックス内の合計が最大の列を検索します。
サイズがMxNの行列があるとします。合計が最大の列を見つける必要があります。このプログラムでは、トリッキーなアプローチには従わず、配列を列ごとにトラバースし、各列の合計を取得します。合計が最大の場合は、合計と列インデックスを出力します。 例 #include<iostream> #define M 5 #define N 5 using namespace std; int colSum(int colIndex, int mat[M][N]){ int sum = 0; for(int i = 0; i<M; i++){
-
C++で2つの対角線の合計の差を見つけます。
ここでは、特定の行列の2つの対角線の合計の差を取得する方法を説明します。次数NxNの行列があるとすると、一次対角線と二次対角線の合計を取得してから、それらの差を取得する必要があります。主対角線を取得するために、行インデックスと列インデックスが同時に増加することがわかります。 2番目の対角線の場合、行インデックスと列インデックスの値は、この式row_index =n – 1 –col_indexによって増加します。合計を取得したら、差を取り、結果を返します。 例 #include<iostream> #include<cmath> #define MAX 100 usin
-
C ++を使用して、ソートされていない配列で床と天井を検索します。
ここでは、並べ替えられていない配列で床と天井を見つける方法を説明します。床の値はx以下の大きい要素であり、天井の値はxより大きい最小値です。配列A=[5、6、8、9、6、5、5、6]で、xが7の場合、フロア値は6、シーリング値は8です。 この問題を解決するために、線形探索アプローチに従います。配列をトラバースし、xに関して2つの距離を追跡します。 x以上の要素の最小距離 x以下の要素の最小距離 最後に、最小距離の印刷要素 例 #include<iostream> using namespace std; void floorCeilingPair(int arr[], int
-
C++を使用して算術平均と幾何平均を使用して調和平均を見つけます。
ここでは、算術平均と幾何平均を使用して調和平均を取得する方法を説明します。これらの3つの平均の式は次のようになります- 算術平均-(a + b)/ 2 幾何平均-$$\sqrt {\ lgroup a * b \ rgroup} $$ 調和平均− 2ab /(a + b) 調和平均は、この式を使用して算術平均と幾何平均を使用して表すことができます- $$ HM =\ frac {GM ^ {2}} {AM} $$ 例 #include <iostream> #include <cmath> using namespace std; double getHa
-
数値がAPの一部であり、その最初の要素と差がC++を使用して与えられているかどうかを調べます。
APの最初の要素があり、違いがあるとします。与えられた数nがAPの一部であるかどうかをチェックする必要があります。最初の項がa=1、differenced =3の場合、項x=7がチェックされます。答えはイエスです。 この問題を解決するために、次の手順に従います- dが0で、a =xの場合はtrueを返し、それ以外の場合はfalseを返します。 それ以外の場合、dが0でない場合、xがシーケンスx =a + n * dに属している場合、nは非負の整数であり、(n --a)/cが非負の整数である場合のみです。 。 例 #include <iostream> using names
-
C ++を使用して、2つの長方形が重なっているかどうかを確認します。
長方形は、左上隅と右下隅の2つの座標を使用して表すことができることがわかっています。 2つの長方形があるとすると、これら2つが重なっているかどうかを確認する必要があります。 4つの座標点(l1、r1)と(l2、r2)があります。 l1は最初の長方形の左上隅です r1は最初の長方形の右下隅です l2は2番目の長方形の左上隅です r2は2番目の長方形の右下隅です 長方形は座標軸に平行であると仮定しました。これを解決するには、いくつかの条件を確認する必要があります。 1つの長方形が別の長方形の上端の上にあります 1つの長方形が別の長方形の左端の左側にあります。 例 #include<
-
C ++を使用して、数値の最大の素因数を見つけます。
要素xがあるとすると、xの最大の素因数を見つける必要があります。 xの値が6の場合、最大の素因数は3です。この問題を解決するには、数値を除数で割って数値を因数分解し、最大の素因数を追跡します。 例 #include <iostream> #include<cmath> using namespace std; long long getMaxPrimefactor(long long n) { long long maxPF = -1; while (n % 2 == 0) {
-
C ++を使用して、N階乗の合計の最後の2桁を検索します。
ここでは、最後の2桁を取得する方法を説明します。 N階乗の合計の単位桁と10桁。したがって、N =4の場合、1になります。 + 2! + 3! + 4! =33.したがって、単位の場所は3で、10の場所は3です。結果は33になります。 10の後、10の場所は0のままになります。N=10以上の場合、00になります。階乗数のN=1から10のグラフを作成できます。 これらの手順を使用してこの問題を解決できます- nの値が10未満の場合、(1!+ 2!+…+ n!)mod 10 それ以外の場合、nの値が10以上の場合、(1!+ 2!+…+ 10!)mod 10 =13 例 #inc
-
C++を使用して構造体配列でmaxを検索します。
ここでは、構造体配列でmaxを取得する方法を説明します。以下のような構造体があるとします。その構造体タイプの配列の最大要素を見つける必要があります。 struct Height{ int feet, inch; }; アイデアは簡単です。配列をトラバースし、配列要素の最大値をインチ単位で追跡します。値が12*フィート+インチの場合 例 #include<iostream> #include<algorithm> using namespace std; struct Height{ int feet, inch; }
-
C ++を使用して、数の因数の最小合計を求めます。
ここでは、与えられた数の因子の最小合計を取得する方法を見ていきます。数が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) 最小の合計は7です。数値を取り、最小の因子の合計を見つけようとします。最小の因数分解の合計を取得するには、可能な限り数を因数分解する必要があります。言い換えれば、素因数を足して合計Sを求めようとすると、その合計は最小化されると言えます。 例 #include<
-
C ++を使用して、AとBの間のN算術平均を見つけます。
3つの整数A、B、およびNがあるとします。AとBの間のNの算術平均を見つける必要があります。A=20、B =32、およびN =5の場合、出力は22、24、26、28、 30 タスクは単純です。等差数列にN個の要素を挿入する必要があります。ここで、AとBはそのシーケンスの最初と最後の項です。 A1、A2、…と仮定します。 anはnの算術平均です。したがって、シーケンスはA、A1、A2、…になります。 An、B。したがって、Bはシーケンスの(N + 2)番目の項です。したがって、これらの式を使用できます- $$ B =A + \ lgroup N + 2-1 \ rgroup * d $$
-
C ++を使用して、AとBの間のN個の幾何平均を見つけます。
3つの整数A、B、およびNがあるとします。AとBの間のN個の幾何平均を見つける必要があります。A=2、B =32、およびN =3の場合、出力は4、8、16 タスクは単純です。等比数列にN個の要素を挿入する必要があります。ここで、AとBはそのシーケンスの最初と最後の項です。 G1、G2、…と仮定します。 Gnはn個の幾何平均です。したがって、シーケンスはA、G1、G2、…になります。 Gn、B。したがって、Bはシーケンスの(N + 2)番目の項です。したがって、これらの式を使用できます- $$ B =A * R ^ {N + 1} $$ $$ R ^ {N + 1} =\ frac {B
-
C++で長さLの文字列の魔法のペアの数を見つけます。
2つの文字列str1とstr2があるとすると、長さLの魔法のペアをいくつか見つける必要があります。すべてのインデックスIに対して、str1 [i]
-
C ++を使用して、XORが0になるような配列内のペアの数を見つけます。
n個の要素の配列があるとします。 XORが0になる配列内のペアの数を見つける必要があります。XORが0のペア(x、y)の場合、x=yです。これを解決するために、配列を並べ替えることができます。次に、2つの連続する要素が同じである場合は、カウントを増やします。すべての要素が同じである場合、最後のカウントはカウントされない場合があります。その場合、最後の要素と最初の要素が同じであるかどうかを確認し、同じである場合は、カウントを1つ増やします。 例 #include<iostream> #include<algorithm> using namespace std; in
-
C ++を使用して、文字列内の1つの余分な文字を検索します。
2つの文字列SとTがあり、Sの長さがnで、Tの長さがn + 1であるとします。TはSに存在するすべての文字を保持しますが、1つの余分な文字を保持します。私たちの仕事は、いくつかの効率的なアプローチを使用して余分なキャラクターを見つけることです。 この問題を解決するために、1つの空のハッシュテーブルを取得し、2番目の文字列のすべての文字を挿入してから、最初の文字列から各文字を削除します。残りの文字は余分な文字です。 例 #include<iostream> #include<unordered_map> using namespace std; char getExtr
-
C ++を使用して、暗号化された配列(他の要素の合計の配列)から元の配列を検索します。
整数の配列があり、その配列が暗号化された配列であると仮定します。配列がA =[10、14、12、13、11]であり、元の配列がB =[5、1、3、2、4 ]、AのインデックスIの各要素が次のルールに従っていることがわかります。A[i] =B[j]の位置jにあるすべての要素の合計。ここでI≠jです。私たちのタスクは、暗号化された配列から元の配列を見つけることです。 タスクは算術観測に基づいています。配列のサイズが4であるとすると、元の配列Bには4つの要素B =[a、b、c、d]があるため、AはA [b + c + d、a + c + d、a + b+dのようになります。 、a + b + c]