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

एन प्राकृतिक संख्याओं से जोड़े की संख्या खोजने का कार्यक्रम जिसका योग मान पायथन में k से विभाज्य है

मान लीजिए कि हमारे पास एक संख्या n और दूसरा मान k है, मान लीजिए कि हमारे पास पहले N प्राकृतिक संख्याओं के साथ एक सरणी A है, हमें A से तत्वों A[i] और A[j] के जोड़े की कुल संख्या ज्ञात करनी है, जैसे कि, i

इसलिए, यदि इनपुट n =10 k =4 जैसा है, तो आउटपुट 10 होगा क्योंकि 10 जोड़े हैं जिनका योग 4 से विभाज्य है। [(1,3), (1,7), (2,6) , (2,10), (3,5), (3,9), (4,8), (5,7), (6,10), (7,9)]

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

  • m :=(n / k), r :=n mod k का तल
  • b :=एक नया नक्शा
  • मैं के लिए 0 से k-1 की सीमा में, करो
    • b[i] :=m
  • i के लिए m*k+1 से n की सीमा में, करें
    • j :=i mod k
    • b[j] :=b[j] + 1
  • सी :=0
  • 0 से k की सीमा में i के लिए, करें
    • i1 :=i
    • i2 :=(k - i) mod k
    • यदि i1 i2 के समान है, तो
      • c :=c + b[i] *(b[i]-1)
    • अन्यथा,
      • c :=c + b[i1] *(b[i2])
  • सी/2 का रिटर्न फ्लोर

उदाहरण

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

def solve(n, k):
   m = n // k
   r = n % k

   b = {}
   for i in range(k) :
      b[i] = m
   for i in range(m*k+1, n+1) :
      j = i % k
      b[j] = b[j] + 1

   c = 0
   for i in range(k) :
      i1 = i
      i2 = (k - i) % k
      if i1 == i2 :
         c = c + b[i] * (b[i]-1)
      else :
         c = c + b[i1] * (b[i2])
   return c//2

n = 10
k = 4
print(solve(n, k))

इनपुट

4, 27

आउटपुट

10

  1. पायथन में उप-पेड़ों के नोड मानों के योग से न्यूनतम मान ज्ञात करने का कार्यक्रम

    मान लीजिए, हमारे पास एक पेड़ है जिसके सभी नोड्स 1 से n तक गिने गए हैं। प्रत्येक नोड में एक पूर्णांक मान होता है। अब यदि हम पेड़ से एक किनारा हटाते हैं, तो दो उप-वृक्षों के नोड मानों के योग में अंतर न्यूनतम होना चाहिए। हमें ऐसे उप-वृक्षों के बीच न्यूनतम अंतर का पता लगाना और वापस करना होगा। पेड़ हमें

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

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

  1. पायथन में रिकर्सन का उपयोग करके प्राकृतिक संख्याओं का योग कैसे प्राप्त करें?

    यदि कोई फ़ंक्शन स्वयं को कॉल करता है, तो उसे पुनरावर्ती फ़ंक्शन कहा जाता है। इसे अनंत लूप में गिरने से रोकने के लिए, रिकर्सिव कॉल को सशर्त स्टेटमेंट में रखा जाता है। निम्नलिखित प्रोग्राम उपयोगकर्ता से इनपुट के रूप में एक संख्या को स्वीकार करता है और इसे rsum() फ़ंक्शन के लिए तर्क के रूप में भेजता है