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

पायथन में आकार एन की अंगूठी में किसी भी पूर्णांक बिंदु से ए और बी की दूरी का न्यूनतम योग पाएं


मान लीजिए कि हमारे पास एक वलय है, जो 1 से N तक की कुछ संख्याओं से बना है। हमारे पास टो नंबर A और B भी हैं। अब, हम किसी भी स्थान पर खड़े हो सकते हैं (जैसे x) और दूरी के कुल योग (जैसे Z =X से A की दूरी + X से B तक की दूरी) के संबंध में गणना संचालन करें। हमें X को ऐसे चुनना है कि Z छोटा हो। अंत में Z का मान लौटाएं। हमें यह ध्यान रखना होगा कि X, A और B के समान नहीं होगा।

इसलिए, यदि इनपुट N =30, A =10, B =20 जैसा है, तो आउटपुट 10 होगा क्योंकि X =15 का चयन करने पर, X से A की दूरी 5 है, और से दूरी X से B 5 है। तो, कुल दूरी =5 + 5 =10.

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

  • अगर a> b गैर-शून्य है, तो

    • स्वैप ए और बी

  • clock_wise_dist:=b - a

  • counter_clock_wise_dist :=(a - 1) +(n - b + 1)

  • मिनिमम_डिस्ट:=न्यूनतम क्लॉक_वाइज_डिस्ट, काउंटर_क्लॉक_वाइज_डिस्ट

  • अगर न्यूनतम_डिस्ट 1 के समान है, तो

    • वापसी 3

  • मिनिमम_डिस्ट लौटाएं

उदाहरण

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

def get_min_z(n, a, b):
   if (a > b):
      a, b = b, a
   clock_wise_dist = b - a
   counter_clock_wise_dist = (a - 1) + (n - b + 1)
   minimum_dist = min(clock_wise_dist, counter_clock_wise_dist)
   if (minimum_dist == 1):
      return 3
   return minimum_dist
n = 30
a = 10
b = 20
print(get_min_z(n, a, b))

इनपुट

30, 10, 20

आउटपुट

10

  1. ग्राफ़ में सबसे बड़े गुट के न्यूनतम आकार का पता लगाने का कार्यक्रम (पायथन)

    मान लीजिए कि हमें एक ग्राफ दिया गया है और ग्राफ में सबसे बड़े समूह का न्यूनतम आकार ज्ञात करने के लिए कहा गया है। ग्राफ़ का एक समूह एक ग्राफ़ का एक उपसमुच्चय होता है, जहाँ प्रत्येक शीर्ष जोड़े आसन्न होते हैं, अर्थात प्रत्येक जोड़े के बीच एक किनारा मौजूद होता है। एक ग्राफ में सबसे बड़ा गुट ढूँढना बहुप

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

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

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

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