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

पायथन में संख्याओं को नॉन-कोप्राइम बनाने के लिए न्यूनतम ऑपरेशन गिनने का प्रोग्राम


मान लीजिए हमारे पास दो संख्याएं A और B हैं। अब प्रत्येक ऑपरेशन में, हम किसी एक संख्या को चुन सकते हैं और इसे 1 से बढ़ा सकते हैं या 1 से घटा सकते हैं। हमें न्यूनतम ऑपरेशनों की संख्या ढूंढनी है जिनकी आवश्यकता है ताकि A और B के बीच महत्तम समापवर्तक 1 न हो।

उदाहरण के लिए, यदि इनपुट A = 8, B = 9 है, तो आउटपुट 1 होगा, क्योंकि हम 9 चुन सकते हैं फिर इसे 10 तक बढ़ा सकते हैं, इसलिए 8 और 10 कोप्राइम नहीं हैं।

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

  • यदि a और b का gcd 1 के समान नहीं है, तो
    • 0 लौटाएं
  • यदि a सम है या b सम है, तो
    • 1 लौटाएं
  • अन्यथा,
    • यदि a + 1 और b का gcd 1 के समान नहीं है या a - 1 और b का gcd 1 के समान नहीं है या a और b - 1 का gcd 1 के समान नहीं है या a और b + 1 का gcd 1 के समान नहीं है, तो
      • 1 लौटाएं
    • अन्यथा,
      • 2 लौटाएं

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

उदाहरण

from math import gcd class Solution:    def solve(self, a, b):       if gcd(a, b) != 1:          return 0       if a % 2 == 0 or b % 2 == 0:          return 1       else:          if (gcd(a + 1, b) != 1 or gcd(a - 1, b) != 1 or gcd(a, b - 1) != 1 or gcd(a, b + 1) != 1):             return 1       else:          return 2 ob = Solution() A = 8 B = 9 print(ob.solve(A, B))

इनपुट

8,9

आउटपुट

1

  1. - पायथन में सभी सेल्स को एक ही रंग में बदलने के लिए आवश्यक ऑपरेशनों की संख्या गिनने का प्रोग्राम

    मान लीजिए हमारे पास एक दो-आयामी मैट्रिक्स M है। अब प्रत्येक सेल में एक मान होता है जो उसके रंग को दर्शाता है, और समान रंग वाले आसन्न सेल (ऊपर, नीचे, बाएं, दाएं) एक साथ समूहित होते हैं। अब, एक ऑपरेशन पर विचार करें जहां हम एक समूह के सभी सेल्स को किसी रंग में सेट करते हैं। फिर अंत में हर सेल का रंग स

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

    मान लीजिए हमारे पास एक संख्या start और एक अन्य संख्या end है (start < end), हमें start को end में बदलने के लिए आवश्यक न्यूनतम संक्रियाओं की संख्या ढूंढनी है इन संक्रियाओं का उपयोग करके: 1 से बढ़ाएं 2 से गुणा करें उदाहरण के लिए, यदि इनपुट है start = 5, end = 11, तो आउटपुट होगा 2, क्योंकि हम 2 से ग

  1. - पायथन में एक स्ट्रिंग को दूसरी स्ट्रिंग का सबस्ट्रिंग बनाने के लिए आवश्यक न्यूनतम संक्रियाओं की संख्या खोजने का प्रोग्राम

    मान लीजिए हमारे पास दो स्ट्रिंग्स s और t हैं, हमें s के लिए आवश्यक न्यूनतम संक्रियाओं की मात्रा ढूंढनी है ताकि t, s का सबस्ट्रिंग बन जाए। अब, प्रत्येक संक्रिया में, हम s में किसी भी स्थिति को चुन सकते हैं और उस स्थिति के वर्ण को किसी अन्य वर्ण में बदल सकते हैं। उदाहरण के लिए, यदि इनपुट है s = abbpq