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

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

मान लीजिए कि हमारे पास nums नामक एक सरणी है और दूसरा मान k है। हमें संख्याओं के गैर-रिक्त अनुक्रमों की संख्या इस प्रकार ज्ञात करनी है कि उस पर न्यूनतम और अधिकतम तत्व का योग छोटा या 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

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

  • सूची संख्या क्रमित करें

  • मी :=10^9 + 7

  • बायां :=0

  • दाएं:=अंकों का आकार - 1

  • रेस :=0

  • जबकि बाएं <=दाएं, करें

    • यदि अंक [बाएं] + अंक [दाएं]> k, तो

      • दाएँ :=दाएँ - 1

    • अन्यथा,

      • num_inside :=दाएँ-बाएँ

      • रेस :=(res + (2^num_inside) मॉड एम) मॉड एम

      • बाएँ :=बाएँ + 1

  • रिटर्न रेस

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

उदाहरण

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. पायथन में दी गई संख्या के सभी अंकों का योग ज्ञात करने का कार्यक्रम

    मान लीजिए कि हमारे पास एक संख्या है, हमें उसके अंकों का योग ज्ञात करना है। हमें इसे स्ट्रिंग्स का उपयोग किए बिना हल करना होगा। इसलिए, यदि इनपुट संख्या =512 की तरह है, तो आउटपुट 8 होगा, जैसा कि 8 =5 + 1 + 2 है। tput 8 होगा, क्योंकि 8 =5 + 1 + 2. इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - योग

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

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

  1. सरणी का योग खोजने के लिए पायथन कार्यक्रम

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