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

एक तत्व खोजें जो पायथन में समान उत्पाद के साथ सरणी को दो उप-सरणी में विभाजित करता है

मान लीजिए कि हमारे पास आकार N की एक सरणी है; हमें एक ऐसा तत्व खोजना है जो समान उत्पाद के साथ सरणी को दो अलग-अलग उप-सरणी में विभाजित करता है। वापसी -1 यदि ऐसा कोई विभाजन संभव नहीं है।

इसलिए, यदि इनपुट [2,5,3,2,5] जैसा है, तो आउटपुट 3 होगा तो उप-सरणी हैं:{2, 5} और {2, 5}

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

  • n :=सरणी का आकार
  • multiply_pref :=एक नई सूची
  • multiple_pref के अंत में सरणी [0] डालें
  • 1 से n की श्रेणी में i के लिए, करें
    • multiply_pref[i-1]*array[i] के अंत मेंmultiply_pref[i-1]*array[i] डालें
  • multiply_suff :=आकार n की सूची, और कोई नहीं भरें
  • multiply_suff[n-1] :=array[n-1]
  • n-2 से -1 की श्रेणी में i के लिए, 1 से घटाएं
    • multiply_suff[i] :=multiply_suff[i+1]*array[i]
  • 1 से n-1 की श्रेणी में i के लिए, करें
    • यदि गुणा_प्रेफ[i], गुणा_सफ[i] के समान है, तो
      • रिटर्न ऐरे[i]
  • वापसी -1

उदाहरण कोड

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

def search_elem(array):
   n = len(array)
   multiply_pref = []
   multiply_pref.append(array[0])
   for i in range(1, n):
      multiply_pref.append(multiply_pref[i-1]*array[i])
   multiply_suff = [None for i in range(0, n)]
   multiply_suff[n-1] = array[n-1]
   for i in range(n-2, -1, -1):
      multiply_suff[i] = multiply_suff[i+1]*array[i]
   for i in range(1, n-1):
      if multiply_pref[i] == multiply_suff[i]:
         return array[i]
   return -1
array = [2,5,3,2,5]
print(search_elem(array))

इनपुट

[2,5,3,2,5]

आउटपुट

3

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

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

  1. एक सरणी में सबसे बड़ा तत्व खोजने के लिए पायथन प्रोग्राम

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

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

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