কম্পিউটার টিউটোরিয়াল

পাইথনে স্ট্রিং s-কে পরিবর্তন করে t কে সাবস্ট্রিং बनानेয় ন্যূনতম অপারেশন বের করার প্রোগ্রাম


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

उदाहरण के लिए, यदि इनपुट है s = "abbpqr", t = "bbxy", तो आउटपुट होगा 2, क्योंकि हम सबस्ट्रिंग "bbpq" ले सकते हैं और 'p' को 'x' में और 'q' को 'y' में बदल सकते हैं।

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

  • k := t का आकार, n := s का आकार
  • ans := 10^10
  • i के लिए 0 से n - k तक की रेंज में, करें
    • ss := s[इंडेक्स i से i+k-1 तक] का सबस्ट्रिंग
    • ans := ans और s और t के बेमेल वर्णों की संख्या का न्यूनतम
  • ans वापस करें

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

उदाहरण

class Solution:    def solve(self, s, t):       k, n = len(t), len(s)       ans = 10**10       for i in range(n - k + 1):          ss = s[i:i+k]          ans = min(ans, sum(ss[j]!=t[j] for j in range(k)))       return ans ob = Solution() print(ob.solve("abbpqr", "bbxy"))

इनपुट

"abbpqr", "bbxy"

आउटपुट

2

  1. পাইথনে স্ট্রিং ট্রিম করে প্যালিনড্রোম বানানোর способ সংখ্যা গণনা

  2. পাইথনে স্ট্রার্ট থেকে এন্ড পৌঁছানোর ন্যূনতম অপারেশন (x2 বা -1)

  3. পাইথনে স্ট্রিং প্যালিনড্রোম বানাতে ন্যূনতম ক্যারেক্টার ইনসার্ট করার প্রোগ্রাম

  4. পাইথনে একটি সংখ্যাকে অন্য সংখ্যায় রূপান্তর করার ন্যূনতম অপারেশন বের করার প্রোগ্রাম