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

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


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

  • 1 से बढ़ाएं
  • 2 से गुणा करें

उदाहरण के लिए, यदि इनपुट है start = 5, end = 11, तो आउटपुट होगा 2, क्योंकि हम 2 से गुणा करके 10 प्राप्त कर सकते हैं, फिर 1 जोड़कर 11 प्राप्त कर सकते हैं।

हल करने के चरण

  • ct := 0
  • जब तक end/2 >= start:
    • यदि end % 2 == 1, तो:
      • end := end - 1
      • end := end/2
      • ct := ct + 2
    • अन्यथा:
      • end := end/2
      • ct := ct + 1
  • ct := ct + (end - start)
  • ct लौटाएं।

उदाहरण

class Solution:
    def solve(self, start, end):
        ct = 0
        while end/2 >= start:
            if end % 2 == 1:
                end -= 1
                end = end/2
                ct += 2
            else:
                end = end/2
                ct += 1
        ct += (end - start)
        return ct

ob = Solution()
print(ob.solve(5, 11))

इनपुट

5, 11

आउटपुट

2
  1. - Python में लक्ष्य तक पहुंचने के लिए दिए गए ऑपरेशन्स की आवश्यक संख्या खोजने का प्रोग्राम

    मान लीजिए हमारे पास start और end दो मान हैं, हमें start को end में बदलने के लिए आवश्यक न्यूनतम ऑपरेशन्स की संख्या ढूंढनी है इन ऑपरेशन्स का उपयोग करके: 1 से घटाएं 2 से गुणा करें तो, यदि इनपुट start = 2, end = 7 जैसा है, तो आउटपुट 3 होगा, क्योंकि हम 2 को गुणा करके 4 प्राप्त कर सकते हैं, फिर 2 से ग

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

    मान लीजिए हमारे पास 0 और 1 वाली एक सूची है, हमें सूची के सामने से या पीछे से मान हटाने हैं। अंत में, हमें न्यूनतम डिलीशन की संख्या ढूंढनी है जैसे कि शेष सूची में 0 और 1 की समान संख्या हो।इसलिए, यदि इनपुट nums = [1, 1, 1, 0, 0, 1] जैसा है, तो आउटपुट 2 होगा, क्योंकि हम पहले 1 और अंतिम 1 को हटा सकते है

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

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