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

C++でkに等しい差を持つすべての異なるペアをカウントします


このチュートリアルでは、差がkに等しい個別のペアを見つけるプログラムについて説明します。

このために、整数配列と値kが提供されます。私たちのタスクは、差がkであるすべての個別のペアをカウントすることです。

#include<iostream>
using namespace std;
int count_diffK(int arr[], int n, int k) {
   int count = 0;
   //picking elements one by one
   for (int i = 0; i < n; i++) {
      for (int j = i+1; j < n; j++)
         if (arr[i] - arr[j] == k || arr[j] - arr[i] == k )
            count++;
   }
   return count;
}
int main(){
   int arr[] = {1, 5, 3, 4, 2};
   int n = sizeof(arr)/sizeof(arr[0]);
   int k = 3;
   cout << "Count of pairs with given diff is" << count_diffK(arr, n, k);
   return 0;
}

出力

Count of pairs with given diff is 2

  1. C++で指定された数に等しいGCDを持つセットのサブセットの数をカウントします

    正の数を含む配列arとgcd値を含む配列GCD[]が与えられます。目標は、GCD[]で指定されたgcd値を持つarr[]の要素のサブセットの数を見つけることです。 例 入力 arr[] = {10, 5, 6, 3}, GCD[] = {2, 3, 5} 出力 Count of number of subsets of a set with GCD equal to a given number are: 1 2 2 説明 The subsets with GCD equal to 2 is [ 10, 6 ]. Subsets with GCD equal to 3 is [ 3 ],

  2. C++でマンハッタン距離に等しい距離のパスをカウントします

    2D座標系上の2つの点を(x1、y1)および(x2、y2)として表す変数x1、x2、y1、y2が与えられます。目標は、これら2つのポイント間のマンハッタン距離に等しい距離を持つすべてのパスを見つけることです。 マンハッタン距離 マンハッタン2点(x1、y1)と(x2、y2)の間の距離は- MD =| x1 – x2 | + | y1 – y2 | A =| x1 –x2|を取りましょうおよびB=| y1 – y2 | マンハッタン距離がMDに等しいすべてのパスでは、エッジが(A + B)としてカウントされます。水平エッジとB垂直エッジ。したがって、2つのグループに分割された(A +