C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

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]、Bのすべての要素を追加すると、sum =b + c + d + a + c + d + a + b + d + a + b + c =3 *( a + b + c + d)。したがって、Bの要素の合計はsum / 3になります。ここで、Bの要素が[sum – A [0]、sum – A [1]、sum – A [2]、sum –A[3]になることがわかります。 ]]

#include<iostream>
using namespace std;
void showOrigianlArray(int arr[], int n) {
   int sum = 0;
   for (int i=0; i<n; i++)
      sum += arr[i];
      sum = sum/(n-1);
   for (int i=0; i<n; i++)
      cout << (sum - arr[i]) << " ";
}
int main() {
   int arr[] = {10, 14, 12, 13, 11};
   int n = sizeof(arr) / sizeof(arr[0]);
   showOrigianlArray(arr, n);
}

出力

5 1 3 2 4

  1. 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]

  2. C++でポインタ演算を使用した配列の合計

    これは、ポインタを使用して配列要素の合計を見つけるC++プログラムです。 アルゴリズム Begin    Initialize the array elements with values from user input.    Initialize s = 0    Loop for i = 0 to       s = s + *(ptr + i)    Print the sum value in variable s. End サンプルコード #include<iostr