हमें एक संख्या N दी गई है। लक्ष्य धनात्मक संख्याओं के क्रमित युग्मों को इस प्रकार खोजना है कि उनके घनों का योग N हो।
हम समीकरण a 3 . के हल ढूंढ़कर ऐसा करेंगे + ख 3 =N. जहाँ a, N के घनमूल से अधिक नहीं है और b की गणना (N-a 3 ) के घनमूल के रूप में की जा सकती है )।
आइए उदाहरणों से समझते हैं।
इनपुट
N=35
आउटपुट
Count of pairs of (a,b) where a^3+b^3=N: 2
स्पष्टीकरण
Pairs will be (2,3) and (3,2). 23+33=8+27=35
इनपुट
N=100
आउटपुट
Count of pairs of (a,b) where a^3+b^3=N: 0
स्पष्टीकरण
No such pairs possible.
नीचे दिए गए प्रोग्राम में इस्तेमाल किया गया तरीका इस प्रकार है
-
हम पूर्णांक N लेते हैं।
-
फ़ंक्शन cubeSum(int n) n लेता है और n के रूप में घनों के योग के साथ क्रमित जोड़े की संख्या देता है।
-
जोड़े के लिए प्रारंभिक चर गणना को 0 के रूप में लें।
-
लूप के लिए उपयोग करके ट्रैवर्स a.
-
a=1 से a<=cbrt(n) तक शुरू करें जो n का घनमूल है।
-
b के घन को n-pow(a,3) के रूप में परिकलित करें।
-
b को cbrt(bcube) के रूप में परिकलित करें
-
अगर पाउ(बी,3)==बीक्यूब. वेतन वृद्धि की संख्या 1.
-
सभी लूपों के अंत में गिनती में ऐसे जोड़ों की कुल संख्या होगी।
-
परिणाम के रूप में गिनती लौटाएं।
उदाहरण
#include <bits/stdc++.h> #include <math.h> using namespace std; int cubeSum(int n){ int count = 0; for (int a = 1; a < cbrt(n); a++){ int bcube=n - (pow(a,3)); int b = cbrt(bcube); if(pow(b,3)==bcube) { count++; } } return count; } int main(){ int N = 35; cout <<"Count of pairs of (a,b) where a^3+b^3=N: "<<cubeSum(N); return 0; }
आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -
Count of pairs of (a,b) where a^3+b^3=N: 2