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

पायथन में गैर-खाली सबसेट गिनने का प्रोग्राम जहां न्यूनतम और अधिकतम तत्व का योग k से कम हो


मान लीजिए हमारे पास nums नामक संख्याओं की एक सूची और एक मान k है, हमें गैर-खाली सबसेट S की संख्या ढूंढनी है जैसे कि S का न्यूनतम + S का अधिकतम <= k। हमें ध्यान रखना है कि सबसेट मल्टीसेट हैं। इसलिए, सबसेट में डुप्लिकेट मान हो सकते हैं क्योंकि वे सूची के विशिष्ट तत्वों को संदर्भित करते हैं, मानों को नहीं।

इसलिए, यदि इनपुट nums = [2, 2, 5, 6], k = 7 जैसा है, तो आउटपुट 6 होगा, क्योंकि हम निम्नलिखित सबसेट बना सकते हैं: [2], [2], [2, 2], [2, 5], [2, 5], [2, 2, 5]।

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

  • N := A का आकार
  • सूची A को सॉर्ट करें
  • ans := 0
  • j := N - 1
  • i के लिए 0 से N तक की रेंज में, करें
    • जब तक j और A[i] + A[j] > K, करें
      • j := j - 1
    • यदि i <= j और A[i] + A[j] <= K, तो
      • ans := ans + 2^(j - i)
  • ans वापस करें

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

उदाहरण

class Solution:    def solve(self, A, K):       N = len(A)       A.sort()       ans = 0       j = N - 1       for i in range(N):          while j and A[i] + A[j] > K:             j -= 1             if i <= j and A[i] + A[j] <= K:                ans += 1 << (j - i)       return ans ob = Solution() nums = [2, 2, 5, 6] k = 7 print(ob.solve(nums, k))

इनपुट

[2, 2, 5, 6]

आउटपुट

6

  1. बाइनरी ट्री में पथ जिनका योग k हो, उनकी संख्या गिनने का पायथन प्रोग्राम बाइनरी ट्री में पथ जिनका योग k हो, उनकी संख्या गिनने का पायथन प्रोग्राम

    मान लीजिए हमारे पास एक बाइनरी ट्री और एक मान k है, हमें उन अद्वितीय नोड-टू-सबचाइल्ड पथों की संख्या ढूंढनी है जिनका योग k के बराबर है। उदाहरण के लिए, यदि इनपुट इस तरह है: और k = 5, तो आउटपुट 2 होगा, क्योंकि पथ हैं [2, 3] और [1, 4]। इसे हल करने के लिए, हम निम्न चरणों का पालन करेंगे: count := एक मैप

  1. पायथन प्रोग्राम: ऐरे में सबसे बड़ा एलिमेंट ढूंढें पायथन प्रोग्राम: ऐरे में सबसे बड़ा एलिमेंट ढूंढें

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

  1. - पायथन प्रोग्राम: टपल में किसी एलिमेंट के ऑकरेंसेज गिनना

    यहां एक यूजर इनपुट टपल दिया गया है, हमारा कार्य टपल में दिए गए एलिमेंट के ऑकरेंसेज गिनना है।उदाहरणInput: A = [10, 20, 30, 40, 10, 100, 80, 10] X = 10 Output: 3एल्गोरिदमcountoccur(A,x) /* A एक ऐरे है और x गिनने के लिए एलिमेंट है */ चरण 1: पहले हम एक काउंटर वेरिएबल उपयोग करते हैं जो समान एलिमेंट को गि