इस समस्या में, हमें दो क्रमबद्ध सरणियाँ arr1[] और arr2[] आकार m और एक तत्व N दिए गए हैं। हमारा कार्य दो सरणियों के योग द्वारा गठित सेट में Nth आइटम खोजना है।
कोड विवरण - यहां, हम एक सेट बनाएंगे जिसमें arr1 में से एक तत्व और arr2 में से एक का योग होगा, यानी sum =arr1[i] + arr2[j], जहां i , j
समस्या को समझने के लिए एक उदाहरण लेते हैं,
आउटपुट
सेट के अवयव हैं -
समाधान दृष्टिकोण केवल सरणी के तत्वों का योग ढूंढकर सेट के तत्वों को ढूंढ रहा है। इसके लिए, हम arr1 के तत्वों को पुनरावृत्त करने के लिए नेस्टेड लूप, बाहरी लूप का उपयोग करेंगे और arr2 के तत्वों को पुनरावृत्त करने के लिए आंतरिक लूप का उपयोग करेंगे। और आंतरिक लूप के प्रत्येक पुनरावृत्ति के लिए, हम योग को सेट में संग्रहीत करेंगे, जो डुप्लिकेट तत्वों की अनुमति नहीं देगा। सभी योग मानों को फीड करने के बाद, हम सेट को पार करेंगे और Nth एलिमेंट वापस करेंगे।
हमारे समाधान की कार्यप्रणाली को दर्शाने वाला कार्यक्रम, इनपुट
arr1[] = {3, 1, 5} , arr2[] = {6, 2, 8} , N = 4
स्पष्टीकरण
9 (3+6 and 1 +8) , 5 (3 + 2) , 11 (3+8, 5+6), 7 (1+6, 5+2), 3 (1+2), 13 (5+8).
The fourth element is 7.
समाधान दृष्टिकोण
उदाहरण
#include <iostream>
using namespace std;
void calcSumVariables(int sum[], int n) {
float SUMX = 0;
for (int i = 0; i < n; i++) {
SUMX += sum[i];
}
SUMX /= (n - 1);
for (int i = 0; i < n; i++)
cout<<"\nx"<<(i + 1)<<" = "<<(SUMX - sum[i]);
}
int main(){
int sum[] = {3, 8, 6, 7, 4, 5, 9 };
int N = sizeof(sum) / sizeof(sum[0]);
cout<<"The value of variables that form the sum are ";
calcSumVariables(sum, N);
return 0;
}
आउटपुट
The value of variables that form the sum are
x1 = 4
x2 = -1
x3 = 1
x4 = 0
x5 = 3
x6 = 2
x7 = -2