配列のBitonicityを計算するC++プログラム
整数の配列で与えられ、タスクは関数を使用して与えられた配列のbitonicityを計算することです。
配列のBitonicityは-
- 0に開始
- 次の要素が前の値よりも大きい場合は1にインクリメントされます
- 次の要素が前の値よりも小さい場合は1に減少します
例
Input-: arr[] = { 1,4,3,5,2,9,10,11}
Output-: Bitonicity of an array is : 3 説明-
- bitonicity計算変数を初期化します。たとえば、tempを0にします。
- 配列の最初の要素である1から開始します。次に、arr[i]とarr[i-1]を比較します。つまり、ここで4と1を比較します。ここで、4は1より大きいため、tempを1でインクリメントします。同様に4と3を比較します。 3は4未満なので、tempの値をデクリメントします。
- 温度の最終値である3を出力します
以下のプログラムで使用されるアプローチは次のとおりです
- 配列のすべての要素をトラバースします。たとえば、arr [n]とします。ここで、nは配列のサイズです
- arr [i]> arr [i-1]の場合、bitonicity =bitonicity + 1
- arr [i]
- arr [i] =arr [i-1]の場合、bitonicity =bitonicity(変更なし)よりも
アルゴリズム
Start
Step 1-> Declare function to calculate bitonicity of an array
int cal_bitonicity(int arr[], int n)
set int temp = 0
Loop For int i = 1 and i < n and i++
IF (arr[i] > arr[i - 1])
Increment temp++
End
Else IF (arr[i] < arr[i - 1])
Decrement temp—
End
return temp
step 2-> In main()
declare int arr[] = { 1,4,3,5,2,9,10,11}
set int n = sizeof(arr) / sizeof(arr[0])
Call cal_bitonicity(arr, n)
Stop 例
#include <iostream>
using namespace std;
// calculate bitonicity
int cal_bitonicity(int arr[], int n) {
int temp = 0;
for (int i = 1; i < n; i++) {
if (arr[i] > arr[i - 1])
temp++;
else if (arr[i] < arr[i - 1])
temp--;
}
return temp;
}
int main() {
int arr[] = { 1,4,3,5,2,9,10,11};
int n = sizeof(arr) / sizeof(arr[0]);
cout<<"Bitonicity of an array is : " <<cal_bitonicity(arr, n);
return 0;
} 出力
上記のコードを実行すると、次の出力が生成されます
Bitonicity of an array is : 3
-
C++で配列のビットノイズをチェックするプログラム
N個の整数の配列arr[N]が与えられた場合、タスクは、与えられた配列がバイトニックであるかどうかをチェックすることです。指定されたアレイがバイトニックである場合は、「はい、バイトニックアレイです」と出力します。そうでない場合は、「いいえ、バイトニックアレイではありません」と出力します。 Bitonicアレイとは、アレイが最初に厳密に昇順で、次に厳密に降順である場合です。 この配列のように、arr [] ={1、2、3、4、2、-1、-5}はバイトニック配列です。これは、4までは厳密に昇順であり、4以降は厳密に降順であるためです。 入力 arr[] = {1, 3, 5, 4,
-
配列要素の乗算のためのC++プログラム
整数要素の配列で与えられ、タスクは配列の要素を乗算して表示することです。 例 Input-: arr[]={1,2,3,4,5,6,7} Output-: 1 x 2 x 3 x 4 x 5 x 6 x 7 = 5040 Input-: arr[]={3, 4,6, 2, 7, 8, 4} Output-: 3 x 4 x 6 x 2 x 7 x 8 x 4 = 32256 以下のプログラムで使用されるアプローチは次のとおりです − 一時変数を初期化して、最終結果を1で格納します ループを0からnまで開始します。nは配列のサイズです 最終結果を得るには、tempの値にarr[i]を掛け続