-
与えられた整数がC++で3の累乗であるかどうかを調べます
この問題では、整数Nが与えられます。私たちのタスクは、与えられた整数が3の累乗であるかどうかを見つけることです。 。 問題を理解するために例を見てみましょう Input : N = 729 Output : Yes 説明 − 36 = 719 ソリューションアプローチ この問題の解決策は、3の累乗の値をチェックすることです。指定された数値Nが1162261467(3 19 )で除算されるかどうかをチェックします。 )。 3の累乗の場合、余りは0になります。つまり、Nで除算されます。そうでない場合、数値は3の累乗ではありません。 例 ソリューションの動作を説明するプログラム #i
-
与えられた数がC++で4の累乗であるかどうかを調べます
この問題では、整数Nが与えられます。私たちのタスクは、与えられた整数が4の累乗であるかどうかを見つけることです。 。 問題を理解するために例を見てみましょう Input : N = 64 Output : Yes 説明 − 43 = 64 ソリューションアプローチ この問題の簡単な解決策は、数値を4で再帰的に除算し、結果の数値が4で除算されているかどうかを確認することです。再帰除算後の値が1になった場合は、trueを返します。 例 ソリューションの動作を説明するプログラム #include <iostream> using namespace std; bool is
-
C++でサブ配列が山の形であるかどうかを確認します
この問題では、整数の配列arr[]と範囲が与えられます。私たちの仕事は、サブアレイが山の形をしているかどうかを確認することです 。 問題を理解するために例を見てみましょう Input : arr[] = {1, 4, 2, 5, 6, 7, 3, 0}, range = [2, 7] Output : Yes 説明 − Subarray of range = {2, 5, 6, 7, 3, 0} The values first increase and then decrease. ソリューションアプローチ この問題の簡単な解決策は、追加のアレイを使用することです。配列の各要素に対
-
アレイが別のアレイのサブセットであるかどうかを確認する-C++でメソッド3を追加
この問題では、サイズmとnの整数arr1[]とarr2[]の2つの配列が与えられます。私たちのタスクは、配列が別の配列のサブセットであるかどうかを確認することです-方法3を追加しました 。 配列arr1[]とarr2[]はどちらも順序付けられておらず、異なる要素を持っています。 問題を理解するために例を見てみましょう Input : arr1[] = {5, 2, 1, 6, 8, 10}, arr2[] = {6, 2, 1} Output : arr2 is a subset of arr1. ソリューションアプローチ この問題を解決するために、ここでは複数の方法について説明しまし
-
C++でax+by=nを満たすxとyを見つけます
この問題では、3つの整数値a、b、およびnが与えられます。私たちのタスクは、 ax + by=nを満たすxとyを見つけることです。 問題を理解するために例を見てみましょう Input : a = 4, b = 1, n = 5 Output : x = 1, y = 1 ソリューションアプローチ この問題の簡単な解決策は、方程式を満たす0からnまでの値を見つけることです。これは、方程式の変更された形式を使用して行います。 x = (n - by)/a y = (n- ax)/b 方程式を満たす値を取得した場合は、値を出力します。それ以外の場合は、「ソリューションが存在しません」と出力
-
C++で2/n =1 / x + 1 / y + 1 / zを満たすx、y、zを見つけます
この問題では、整数値nが与えられます。私たちのタスクは、 2 / nx + 1 / y + 1 / zを満たすx、y、zを見つけることです。 問題を理解するために例を見てみましょう Input : n = 4 Output : 4, 5, 20 ソリューションアプローチ この問題の簡単な解決策は、nの値を使用して解決策を見つけることです。 n =1の場合、方程式の解はありません。 1の場合、方程式の解はx =n、y =n + 1、z =n(n + 1)です。 解は$2/ n \:=\:1 / n \:+ 1 \:(n + 1)\:+ \:1 /(n ^ *(n \:+ \:1))
-
C++でXOR演算子を使用せずに2つの数値のXORを検索する
この問題では、整数値AとBが与えられます。私たちのタスクは、XOR演算子を使用せずに2つの数値のXORを見つけることです。 。 問題を理解するために例を見てみましょう Input : A = 4, B = 5 Output : 1 ソリューションアプローチ この問題を解決する1つの方法は、数値をそれぞれの2進数に変換し、このテーブルに基づいてビット演算を実行することです。 A B 出力 0 0 0 0 1 1 1 0 1 1 1 0 これにより、結果が返されます。このために、ビット演算を使用します。
-
C++の他のいくつかのトグルビットのすべてのセットビットに対して
この問題では、2つの整数値が与えられます。私たちのタスクは、操作を実行するためのcプログラムを作成することです。数値の設定されたビットごとに、他のビットを切り替えます。 問題を理解するために例を見てみましょう Input: 3 7 Output: 4 Binary of 3: 011 Binary of 3: 111 2番目の数値の1番目と2番目のビットが反転し、100、つまり4になります。 ソリューションアプローチ この問題を解決するためのアプローチは、2つの数値のXOR演算を実行することです。 XOR演算を使用して、I’stのビットが1である場合は常に、結果がビットに対して切り
-
フラッドフィルアルゴリズム– C ++のペイントでfill()を実装する方法
この問題では、2次元画面を表す2次元配列、色で塗りつぶされる画面上のピクセルの座標、および色が与えられます。私たちのタスクは、現在のピクセルとその色を持つすべての隣接するピクセルに色を付けるプログラムを作成することです。 ペイントでの着色 、色を選択し、指定されたピクセルをブラシでクリックします。 問題を理解するために例を見てみましょう 入力:Sceen [] [] ={{W、W、B、W、W、W、W、W}、{W、W、W、W、W、W、B、B}、{W 、B、B、W、W、B、W、W}、{W、Y、Y、Y、Y、B、W、B}、{B、W、W、Y、Y、B、W、B }、{B、W、W、Y、Y、Y、Y、B}
-
最大で1つのスワップ操作C++を使用して最大数を形成します
この問題では、正の整数が与えられます。私たちのタスクは、最大1つのスワップ操作を使用して最大数を形成するプログラムを作成することです。 既存の番号の数字を使用して新しい番号を作成します。 形成される最大の数字は、既存の数字から1桁だけ交換できます。 問題を理解するために例を見てみましょう Input: n = 63512 Output: 65312 ソリューションアプローチ この問題を解決する1つの方法は、指定された数字の数字のペアを交換することによって作成されたすべての数字を見つけることです。これらの交換されたすべての桁番号のうち、最大のものが返されます。このために、数値を文字列に
-
C++で最大1つのスワップ操作を使用して最小数を形成します
この問題では、正の整数が与えられます。私たちの仕事は、多くても1回のスワップ操作を使用して少数を形成するプログラムを作成することです。 既存の番号の桁を使用して新しい番号を作成します。形成される最小の数字は、既存の数字から1桁だけ交換できます。 問題を理解するために例を見てみましょう Input: n = 63519 Output: 36519 ソリューションアプローチ この問題を解決する1つの方法は、指定された数字の数字のペアを交換することによって作成されたすべての数字を見つけることです。これらの交換されたすべての桁番号のうち、最小のものが返されます。このために、数値を文字列に変換し
-
C ++でシリーズ3、13、42、108、235のn番目の項を検索しています...
この問題では、数nが与えられます。私たちの仕事は、シリーズ3、13、42、108、235のn番目の用語を見つけることです... 問題を理解するために例を見てみましょう Input : 5 Output : 235 ソリューションアプローチ 級数は、最初のn個の自然数の立方体の合計として表すことができます。その式は(n * (n + 1)/ 2)2。また、2 *を追加すると それに必要なシリーズを取得します。 級数の合計の式は(n * (n + 1)/ 2) 2 +2 * n。 n =5の場合、式による合計は (5 *(5 + 1)/ 2))^ 2 + 2 * 5
-
nの素数pの累乗を見つけよう! C++で
この問題では、数nと素数pが与えられます。私たちの仕事は、 nの素数pの累乗を見つけることです! 問題を理解するために例を見てみましょう Input : n = 6, p = 2 Output : 4 ソリューションアプローチ この問題の簡単な解決策は、n!の値を見つけることです。そしてそれを因数分解し、因数分解で素数pの累乗を見つけます。 ここで、数値は5分の2の電力因数分解として表すことができます。 =30は3です。 n階乗の値はです。 $$ n!\:=\:n ^ *(n-1)^ *(n-2)^ *(n-3)\ dotso {^ *} 2 ^ * 1 $$ $$ n!\:
-
C++の最初と最後の3ビット
この問題では、数値Nが与えられます。私たちのタスクは、指定された整数値Nの最初の3ビットと最後の3ビットの10進変換を見つけることです。 。 問題を理解するために例を見てみましょう Input : 57 Output : 71 ソリューションアプローチ 簡単な解決策は、数値nを同等の2進数に変更してから、ビットを配列に保存することです。この後、配列の最初の3つと最後の3つの値を個別に数値に変換します。両方のビットセットの10進変換が結果です。 たとえば、80という数字を考えてみましょう。 80のバイナリ変換は1010000です。 最初の3ビット(101)の10進変換は5です。 最
-
Cの例を使用して文字列の脆弱性と防止をフォーマットする
フォーマット文字列 −文字列のフォーマットに使用されるASCII文字列です。これは、テキストとフォーマットパラメータで構成されるASCII文字列です。 プログラムの出力であるフォーマットについては、Cにはさまざまなフォーマット文字列があります。 フォーマット文字列の脆弱性 これらは、プログラマーが簡単に作成できるプログラミングエラーが原因で発生するバグです。このようなエラーが発生しやすいコードブログがprintf、sprintf、などの出力関数に渡された場合 次に、任意のメモリアドレスに対して書き込み操作が実行されます。 例 #include<stdio.h> #include
-
C++でガウスのジョーダン法を使用して行列の逆行列を見つける
この問題では、2D行列mat[][]が与えられます。私たちのタスクは、ガウスのジョーダン法を使用して行列の逆行列を見つけることです。 。 それでは、問題の基本を理解しましょう。 マトリックス は数値の2次元配列です。 例 $ \ begin {bmatrix} 2&5&4 \\ 1&6&7 \\ 9&3&8 \ end {bmatrix} $ 逆行列[A-1] − 正方行列に対して実行される操作です。以下は、行列が逆行列を持つために必要なプロパティです- 初期行列は正方行列である必要があります。 正則行列でなければなりません。 行列Aに対して、次のような単位
-
C++のソートされたリンクリストで中央値を見つける
この問題では、N個の要素で構成されるソートされたリンクリストが与えられます。私たちのタスクは、並べ替えられたリンクリストの中央値を見つけることです。 。 ソートされたリンクリスト は、すべての要素が特定の順序でソートされている単純なリンクリストです。 例 NULL 中央値 リンクリストの中央の要素です。 Nが奇数であるかのように見つけることができます:中央値は(n / 2) th 要素 Nが偶数の場合-s中央値は(n / 2) thの平均です 要素と(n / 2 + 1) th 要素。 問題を理解するために例を見てみましょう Input: 2 -> 3 -> 4 -
-
C ++でのみ素数(2、3、5、および7)で構成されるn番目の数値を検索する
この問題では、数値Nが与えられます。私たちのタスクは素数(2、3、5、7)のみで構成されるn番目の数値を見つけることです 。 素数のみ(2、3、5、7)で構成されるシリーズは、2、3、5、7、22、23、25、27、32、33 ... 問題を理解するために例を見てみましょう Input: N = 6 Output: 23 ソリューションアプローチ 問題を解決するための簡単なアプローチは、与えられたインデックスで数を見つけることです。つまり、級数の項を見つけることです。このために、級数を観察します。 4つの異なる素数があるので、作成されたシリーズは4桁の記数法として扱うことができます
-
C++での友達ペアリングの問題
この問題では、グループ内の友達の数を示す正の整数Nが与えられます。私たちの仕事は、FriendsPairingの問題を解決するためのプログラムを作成することです。 グループの各友達は、独身のままにすることも、他の1人の友達とペアにすることもできます。グループの各友達のペアリングは1回だけ実行できます。 問題を理解するために例を見てみましょう Input: n = 3 Output: 4 Explanation: Let’s say the 3 members of the group are A, B and C. The pairing can be done as :
-
C++ですべての等しい要素を持つ最大の正方形の部分行列を見つける
この問題では、N*N行列mat[]が与えられます。私たちのタスクは、すべて等しい要素を持つ最大の正方形の部分行列を見つけることです。 。 この問題では、すべての要素が同じである特定の行列から部分行列の最大サイズを見つける必要があります。 問題を理解するために例を見てみましょう Input: mat[][] = {{1, 2, 1}, {1, 2, 2}, {2, 2, 2}} Output: 2 説明 − matrix a11, a12, a21, a22 is of size 2X2 and forms a sub-matrix with all equal elements.