Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन में nth घात के अद्वितीय संख्याओं के योग के रूप में संख्या प्राप्त करने के तरीकों की संख्या खोजने का प्रोग्राम


मान लीजिए हमारे पास एक संख्या x और दूसरी संख्या n है। हमें उन तरीकों की संख्या ज्ञात करनी है जिनसे हम x को कुछ अद्वितीय संख्याओं के nth घात के योग के रूप में प्राप्त कर सकते हैं।

उदाहरण के लिए, यदि इनपुट x = 100 n = 2 है, तो आउटपुट 3 होगा क्योंकि संभावित समाधान हैं: 6^2 + 8^2, 10^2 और 1^2 + 3^2 + 4^2 + 5^2 + 7^2।

समाधान दृष्टिकोण

इसे हल करने के लिए हम निम्न चरणों का पालन करेंगे:

  • ans := 0
  • solve() नामक एक विधि परिभाषित करें जो चार पैरामीटर x, n, cn और cs लेती है, cs और cn के प्रारंभिक मान क्रमशः 0 और 1 हैं
  • p := cn^n
  • जब तक p + cs < x, करें
    • ans := ans + solve(x, n, cn + 1, p + cs)
    • cn := cn + 1
    • p := cn^n
  • यदि p + cs, x के बराबर है, तो
    • ans := ans + 1
  • ans लौटाएं

उदाहरण

बेहतर समझ के लिए निम्न कार्यान्वयन देखें:

from math import pow

def solve(x, n, cn=1, cs=0):
    ans = 0
    p = pow(cn, n)
    while p + cs < x:
        ans += solve(x, n, cn + 1, p + cs)
        cn = cn + 1
        p = pow(cn, n)
    if p + cs == x:
        ans = ans + 1
    return ans

x = 100
n = 2
print(solve(x, n))

इनपुट

100, 2

आउटपुट

3
  1. - पायथन में पहले n विषम संख्याओं का योग खोजने का प्रोग्राम

    मान लीजिए हमारे पास एक संख्या n है, हमें पहले n धनात्मक विषम संख्याओं का योग ढूंढना है। उदाहरण के लिए, यदि इनपुट 7 है, तो आउटपुट 49 होगा क्योंकि [1+3+5+7+9+11+13] = 49। इसे हल करने के लिए हम निम्न चरणों का पालन करेंगे: यदि n == 0, तो 0 वापस करें sum := 1, count := 0, temp := 1 जब तक count < n-1, क

  1. - पायथन में Nवीं फाइबोनैचि संख्या खोजने का प्रोग्राम

    मान लीजिए हमारे पास एक संख्या n है, हमें nवीं फाइबोनैचि पद ढूंढना है। जैसा कि हम जानते हैं iवां फाइबोनैचि पद f(i) = f(i-1) + f(i-2), पहले दो पद 0, 1 हैं। उदाहरण के लिए, यदि इनपुट 15 है, तो आउटपुट 610 होगा। इसे हल करने के लिए हम निम्न चरणों का पालन करेंगे: first := 0, second := 1 i को 2 से n तक के

  1. पायथन प्रोग्राम: किसी संख्या के सम गुणनखंडों का योग ज्ञात करें पायथन प्रोग्राम: किसी संख्या के सम गुणनखंडों का योग ज्ञात करें

    इस लेख में हम दी गई समस्या के समाधान के बारे में जानेंगे। समस्या कथन हमें एक संख्या दी गई है, हमें उस संख्या के सभी सम गुणनखंडों का योग प्रदर्शित करना है। दृष्टिकोण हम जांचते हैं कि क्या संख्या विषम है, तो कोई सम गुणनखंड नहीं हैं, इसलिए 0 वापस करें। यदि संख्या सम है, तो हम गणना के माध्यम से जाते हैं