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

पायथन में सभी सरणी तत्वों को समान बनाने के लिए आवश्यक संचालन की संख्या


हमने तत्वों की एक सरणी दी है, और हमें तत्वों को 1 से बढ़ाकर उन सभी को समान बनाना है। हमें प्रत्येक चरण में n - 1 तत्व को बढ़ाने की अनुमति है। हमारा लक्ष्य सभी सरणी तत्वों को समान बनाने के लिए आवश्यक संचालन की कुल संख्या की गणना करना है।

उदाहरण के लिए, यदि आप सूची [1, 2, 3] लेते हैं, तो सभी तत्वों को समान बनाने के लिए तीन ऑपरेशन किए गए। समस्या का एक ही समाधान है। प्रत्येक चरण में सबसे महत्वपूर्ण संख्या ज्ञात कीजिए और शेष तत्वों को 1 से बढ़ाइए। आइए कोड लिखें।

उदाहरण

def main():
   # intializing the array
   arr = [1, 2, 3]
   # initializing operations count to 0
   no_of_operations = 0
   flag = 0
   # performing the operations on array to make them equal
   while not are_equal(arr):
      flag = 1
      # finding the maximum from the list
      maximum = max(arr)
      # incrementing all the elements except maximum
      for i in range(len(arr)):
         if arr[i] != maximum:
            arr[i] += 1
      # incrementing the operations count by 1
      no_of_operations += 1
   print(no_of_operations) if flag == 0 else print(no_of_operations + 1)
# checking whether all the elements are equal or not
def are_equal(arr):
   global no_of_operations
   for i in range(len(arr) - 1):
      if arr[i] != arr[i + 1]:
         return False
   return True
if __name__ == '__main__':
   main()

आउटपुट

यदि आप उपरोक्त कार्यक्रम चलाते हैं, तो आपको निम्नलिखित परिणाम प्राप्त होंगे।

3

उपरोक्त विधि बड़ी सरणियों के लिए गणना करने में अधिक समय लेती है। हम सरणी के योग और सबसे छोटे तत्व का पता लगाकर संक्रियाओं की संख्या ज्ञात कर सकते हैं।

  • सरणी का योग ज्ञात कीजिए।
  • सरणी में सभी तत्वों में से सबसे छोटा तत्व खोजें।
  • व्यंजक योग से प्राप्त मान प्रिंट करें - (लंबाई - सबसे छोटा)

उदाहरण

नीचे दिए गए कोड को देखें।

# initializing an array
arr = [1, 2, 3]
# length
length = len(arr)
# sum of element fo the array
elements_sum = sum(arr)
# smallest among all the elements
smallest = min(arr)
# calculating the number of operations
print(elements_sum - (length * smallest))

आउटपुट

यदि आप उपरोक्त कोड चलाते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।

3

निष्कर्ष

दूसरी विधि जिसकी हमने चर्चा की वह आसान है और पहली विधि की तुलना में कम समय लेती है। यदि आपको ट्यूटोरियल में कोई संदेह है, तो टिप्पणी अनुभाग में उनका उल्लेख करें।


  1. पायथन में ऐरे ज़िगज़ैग बनाने के लिए तत्वों को घटाएं

    मान लीजिए कि हमारे पास पूर्णांकों की एक सरणी संख्या है, एक चाल ऑपरेशन वास्तव में किसी भी तत्व को चुन रहा है और इसे 1 से घटा रहा है। एक सरणी ए एक ज़िगज़ैग सरणी है यदि 1 या 2 संतुष्ट है - ए [1] ए [3] ... और इसी तरह। प्रत्येक विषम-अनुक्रमित तत्व आसन्न तत्वों से बड़ा है, इसलिए। ए [0] ए [2] ए [

  1. पायथन में सरणी में सभी तत्वों की आवृत्तियों की गणना करें

    इस ट्यूटोरियल में, हम एक प्रोग्राम लिखने जा रहे हैं जो एक ऐरे में सभी एलीमेंट्स की फ़्रीक्वेंसी का पता लगाता है। हम इसे अलग-अलग तरीकों से ढूंढ सकते हैं आइए उनमें से दो को देखें। तानाशाही का उपयोग करना ऐरे को इनिशियलाइज़ करें। एक खाली तानाशाही . को प्रारंभ करें । सूची में पुनरावृति करें।

  1. पायथन प्रोग्राम यह जांचने के लिए कि क्या किसी सरणी में सभी अंकों का उपयोग करके 3 संख्या से विभाज्य बनाना संभव है

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