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

पायथन में डिवाइजर्स के डिवाइजर्स की संख्या का योग ढूंढने का प्रोग्राम

मान लीजिए हमें दो इंटीजर नंबर m और a दिए गए हैं। अब n = p₁^(a+1) * p₂^(a+2) * ... * pₘ^(a+m), जहां pᵢ i-वीं अभाज्य संख्या है और i > 0। हमें k का मान ढूंढना है, जहां k = n के f(x) मानों का योग। यहां f(x) मान n के प्रत्येक डिवाइजर के डिवाइजर मानों की संख्या हैं।

इसलिए, यदि इनपुट m = 2, a = 1 है, तो आउटपुट 60 होगा।

  • n = 2² × 3³
  • n = 4 × 27
  • n = 108

108 के डिवाइजर हैं: 1, 2, 3, 4, 6, 9, 12, 18, 27, 36, 54, 108

प्रत्येक डिवाइजर के f(x) मान हैं: f(1) + f(2) + f(3) + f(4) + f(6) + f(9) + f(12) + f(18) + f(27) + f(36) + f(54) + f(108)

= 1 + 2 + 2 + 4 + 4 + 3 + 5 + 6 + 4 + 9 + 8 + 12

= 60।

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

  • MOD := 10^9 + 7
  • summ() फंक्शन परिभाषित करें जो n लेता है और (n * (n + 1)) / 2 का फ्लोर मान लौटाता है
  • division() फंक्शन परिभाषित करें मॉड्यूलर विभाजन के लिए
  • mat सरणी बनाएं और संचयी गुणनफल की गणना करें
  • मॉड्यूलर विभाजन का उपयोग करके अंतिम परिणाम लौटाएं

उदाहरण कार्यान्वयन

MOD = 10**9 + 7

def summ(n):
    return ((n) * (n + 1)) // 2

def division(a, b, mod):
    if a % b == 0:
        return a // b
    a += mod * division((-a) % b, mod % b, b)
    return (a // b) % mod

def solve(m, a):
    mat = [1]
    while len(mat) <= m + a:
        mat.append((mat[-1] * summ(len(mat) + 1)) % MOD)
    return division(mat[m + a], mat[a], MOD)

print(solve(2, 1))

इनपुट

2, 1

आउटपुट

60
  1. Python प्रोग्राम से सूची में सबसे छोटी संख्या खोजना Python प्रोग्राम से सूची में सबसे छोटी संख्या खोजना

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक सूची दी गई है, हमें सूची में उपलब्ध सबसे छोटी संख्या प्रदर्शित करने की आवश्यकता है। यहां हम या तो सूची को क्रमबद्ध करके सबसे छोटा तत्व प्राप्त कर सकते हैं या बिल्ट-इन min() फ़ंक्शन का उपयोग करके सबसे छोटा तत्

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

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

  1. पायथन प्रोग्राम: ऐरे का योग ढूंढें पायथन प्रोग्राम: ऐरे का योग ढूंढें

    इस लेख में, हम दिए गए प्रॉब्लम स्टेटमेंट को हल करने के समाधान और दृष्टिकोण के बारे में सीखेंगे। प्रॉब्लम स्टेटमेंट इनपुट के रूप में एक ऐरे दिए जाने पर, हमें दिए गए ऐरे का योग निकालने की आवश्यकता है। यहां हम ब्रूट-फोर्स दृष्टिकोण का पालन कर सकते हैं यानी एक लिस्ट को ट्रैवर्स करना और प्रत्येक एलिमें