Computer >> Máy Tính >  >> Lập trình >> C ++

Đếm tất cả các cặp phân biệt có hiệu số bằng k trong C ++

Trong hướng dẫn này, chúng ta sẽ thảo luận về một chương trình để tìm các cặp phân biệt có hiệu số bằng k.

Đối với điều này, chúng ta sẽ được cung cấp một mảng số nguyên và giá trị k. Nhiệm vụ của chúng ta là đếm tất cả các cặp riêng biệt có sự khác biệt là k.

Ví dụ

#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;
}

Đầu ra

Count of pairs with given diff is 2