हमें एक संख्या 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