इस ट्यूटोरियल में, हम एक प्रोग्राम लिखने जा रहे हैं जो दिए गए ऐरे में विसंगतियों की संख्या का पता लगाता है।
एक संख्या दी गई सरणी में एक विसंगति है यदि संख्या और अन्य सभी संख्याओं के बीच पूर्ण अंतर दी गई संख्या k से अधिक है। आइए एक उदाहरण देखें।
इनपुट
arr = [3, 1, 5, 7] k = 1
आउटपुट
4
अन्य सभी संख्याओं के बीच पूर्ण अंतर k से अधिक है।
एल्गोरिदम
-
ऐरे को इनिशियलाइज़ करें।
-
सरणी पर पुनरावृति करें।
-
तत्व लें और सरणी पर पुनरावृति करें।
-
दो संख्याओं के बीच पूर्ण अंतर ज्ञात कीजिए।
-
यदि कोई पूर्ण अंतर k से कम या उसके बराबर नहीं है, तो विसंगतियों की संख्या में वृद्धि करें।
-
-
कार्यान्वयन
C++ में उपरोक्त एल्गोरिथम का कार्यान्वयन निम्नलिखित है
#include <bits/stdc++.h> using namespace std; int getAnomaliesCount(int arr[], int n, int k) { int count = 0; for (int i = 0; i < n; i++) { int j; for (j = 0; j < n; j++) { if (i != j && abs(arr[i] - arr[j]) <= k) { break; } } if (j == n) { count++; } } return count; } int main() { int arr[] = {3, 1, 5, 7}, k = 1; int n = 4; cout << getAnomaliesCount(arr, n, k) << endl; return 0; }
आउटपुट
यदि आप उपरोक्त कोड चलाते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।
4