मान लीजिए हमारे पास दो स्ट्रिंग्स s और t हैं, हमें s के लिए आवश्यक न्यूनतम संक्रियाओं की मात्रा ढूंढनी है ताकि t, s का सबस्ट्रिंग बन जाए। अब, प्रत्येक संक्रिया में, हम s में किसी भी स्थिति को चुन सकते हैं और उस स्थिति के वर्ण को किसी अन्य वर्ण में बदल सकते हैं।
उदाहरण के लिए, यदि इनपुट है s = "abbpqr", t = "bbxy", तो आउटपुट होगा 2, क्योंकि हम सबस्ट्रिंग "bbpq" ले सकते हैं और 'p' को 'x' में और 'q' को 'y' में बदल सकते हैं।
हल करने के चरण
k := tका आकार,n := sका आकार।ans := 10^10iको 0 सेn - kतक:ss := sका सबस्ट्रिंग इंडेक्सiसेi+k-1तक।ans := min(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