इस समस्या में, हमें n चरों का एक रैखिक समीकरण दिया जाता है, जिसका रूप है,
coeff1(var1) + coeff2(var2) + … + coeffn(varn) = value
n चरों के रैखिक समीकरण के हलों की संख्या ढूंढें।
आइए एक उदाहरण से समस्या को समझते हैं,
इनपुट
coeff[] = {3, 1}, value = 4आउटपुट
1
व्याख्या
समीकरण : 3x + y = 4. हल, x = 0, y = 4.
समाधान दृष्टिकोण
इस समस्या का एक सरल समाधान समीकरण के मान का मूल्यांकन करना है। फिर मानों को पुनरावर्ती रूप से कॉल करके अपडेट करें। यदि मान 0 है, तो हल की गिनती 1 है। अन्यथा coeff मानों को घटाकर मान के साथ पुनरावृत्ति करें।
हमारे समाधान की कार्यप्रणाली को दर्शाने वाला प्रोग्राम,
उदाहरण
#include<iostream> using namespace std; int countSolutionsEq(int coeff[], int start, int end, int value) { if (value == 0) return 1; int coefCount = 0; for (int i = start; i <= end; i++) if (coeff[i] <= value) coefCount += countSolutionsEq(coeff, i, end, value - coeff[i]); return coefCount; } int main() { int coeff[] = {3, 5, 1, 2}; int value = 6; int n = sizeof(coeff) / sizeof(coeff[0]); cout<<"The number of solutions of the linear equation is "<<countSolutionsEq(coeff, 0, n - 1, value); return 0; }आउटपुट
The number of solutions of the linear equation is 8