हमें दोहराव या डुप्लिकेट तत्वों वाली एक सरणी दी गई है और कार्य उन सभी तत्वों का गुणनफल खोजना है जो दी गई सरणी में गैर-दोहराव वाले या विशिष्ट हैं और परिणाम प्रदर्शित करना है।
उदाहरण
इनपुट-: arr[] = {2, 1, 1, 2, 3, 4, 5, 5 } आउटपुट-: 120 व्याख्या-: चूंकि 1, 2 और 5 एक से अधिक बार दोहरा रहे हैं तो हम उन्हें उनकी पहली घटना के लिए विचार में लेंगे। तो परिणाम 1 * 2 * 3 * 4 * 5 = 120 होगा इनपुट-: arr[] = {1, 10, 9, 4, 2, 10, 10, 45, 4 } आउटपुट-: 32400 व्याख्या-: चूंकि 10 और 4 एक से अधिक बार दोहरा रहे हैं तो हम उन्हें उनकी पहली घटना के लिए विचार में लेंगे। तो परिणाम 1 * 10 * 9 * 4 * 2 * 45 = 32400 होगानीचे दिए गए प्रोग्राम में उपयोग किया गया दृष्टिकोण इस प्रकार है −
- डुप्लिकेट तत्वों को एक सरणी में इनपुट करें
- बेहतर दृष्टिकोण के लिए सरणी के तत्वों को आरोही क्रम में क्रमबद्ध करें ताकि यह निर्धारित करना आसान हो कि कौन सा सरणी तत्व दोहरा रहा है और गुणनफल के लिए उस पर विचार न करें
- सरणी में सभी विशिष्ट तत्वों को खोजें और परिणाम संग्रहीत करके उन्हें गुणा करते रहें
- अंतिम परिणाम को सरणी में सभी विशिष्ट तत्वों के गुणनफल के रूप में प्रदर्शित करें
एल्गोरिदम
शुरुआत चरण 1-> सरणी में सभी विशिष्ट तत्वों का गुणनफल खोजने के लिए फ़ंक्शन घोषित करें int find_Product(int arr[], int size) int prod = 1 घोषित करें और सेट करें unordered_set<int> s के रूप में चर बनाएं लूप i = 0 से i < size और i++ तक IF s.find(arr[i]) = s.end() prod *= arr[i] सेट करें s.insert(arr[i]) कॉल करें अंत अंत prod वापस करें चरण 2 -: main() में int arr[] = { 2, 1, 1, 2, 3, 4, 5, 5 } घोषित करें और सेट करें सरणी का आकार गणना करें int size = sizeof(arr) / sizeof(int) find_Product(arr, size) कॉल करें रुकेंउदाहरण
include <bits/stdc++.h> using namespace std; //फ़ंक्शन जो गैर-दोहराव तत्वों का गुणनफल गणना करता है int find_Product(int arr[], int size) { int prod = 1; unordered_set<int> s; for (int i = 0; i < size; i++) { if (s.find(arr[i]) == s.end()) { prod *= arr[i]; s.insert(arr[i]); } } return prod; } int main() { int arr[] = { 2, 1, 1, 2, 3, 4, 5, 5 }; int size = sizeof(arr) / sizeof(int); cout<<"सभी गैर-दोहराव तत्वों का गुणनफल है : "<<find_Product(arr, size); return 0; }आउटपुट
सभी गैर-दोहराव तत्वों का गुणनफल है : 120