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

पायथन का उपयोग करके दिए गए योग शर्त को पूरा करने वाले सबसीक्वेंस की संख्या खोजने का प्रोग्राम


मान लीजिए हमारे पास nums नामक एक सरणी और दूसरा मान k है। हमें nums के गैर-खाली सबसीक्वेंस की संख्या ढूंढनी है जैसे कि उस पर न्यूनतम और अधिकतम तत्व का योग k से कम या बराबर हो। उत्तर बहुत बड़ा हो सकता है इसलिए उत्तर को 10^9 + 7 से मोडुलो वापस करें।

उदाहरण के लिए, यदि इनपुट nums = [4,6,7,8] k = 11 है, तो आउटपुट 4 होगा क्योंकि ऐसे सबसीक्वेंस हैं:

  • [4], यहां न्यूनतम 4 है, अधिकतम 4 है, इसलिए 4+4 <= 11

  • [4,6], यहां न्यूनतम 4 है, अधिकतम 6 है, इसलिए 4+6 <= 11

  • [4,6,7], यहां न्यूनतम 4 है, अधिकतम 7 है, इसलिए 4+7 <= 11

  • [4,7], यहां न्यूनतम 4 है, अधिकतम 7 है, इसलिए 4+7 <= 11

हल करने के चरण

  • सूची nums को सॉर्ट करें

  • m := 10^9 + 7

  • left := 0

  • right := nums का आकार - 1

  • res := 0

  • जब तक left <= right, करें

    • यदि nums[left] + nums[right] > k, तो

      • right := right - 1

    • अन्यथा,

      • num_inside := right - left

      • res := (res + (2^num_inside) mod m) mod m

      • left := left + 1

  • res वापस करें

उदाहरण

def solve(nums, k):
    nums.sort()
    m = 10**9 + 7
    left = 0
    right = len(nums) - 1
    res = 0
    while left <= right:
        if nums[left] + nums[right] > k:
            right -= 1
        else:
            num_inside = right - left
            res = (res + pow(2, num_inside, m)) % m
            left += 1
    return res

nums = [4,6,7,8]
k = 11
print(solve(nums, k))

इनपुट

[4,6,7,8], 11

आउटपुट

4
  1. - पायथन में दी गई संख्या के सभी अंकों का योग खोजने का प्रोग्राम

    मान लीजिए हमारे पास एक संख्या num है, हमें इसके अंकों का योग ढूंढना है। हमें इसे स्ट्रिंग्स का उपयोग किए बिना हल करना है। उदाहरण के लिए, यदि इनपुट है num = 512, तो आउटपुट होगा 8, क्योंकि 8 = 5 + 1 + 2। हल करने के चरण sum := 0 जब तक num != 0: sum := sum + (num % 10) num := num // 10 sum लौटाएं।

  1. Python प्रोग्राम में ऐरे का योग खोजना Python प्रोग्राम में ऐरे का योग खोजना

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

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

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