समस्या विवरण
एक लोअरकेस अल्फाबेट स्ट्रिंग s और ऑफसेट k दिया गया है। प्रत्येक अक्षर को वर्णमाला में k स्थान आगे शिफ्ट करें। 'z' के बाद 'a' से रैपअराउंड होता है।
उदाहरण
इनपुट: s = "hello", k = 3
आउटपुट: "khoor"
एल्गोरिदम
- हेल्पर फंक्शन
shift(c):i = ord(c) - ord('a')(0-25)i = (i + k) % 26return chr(ord('a') + i)
- स्ट्रिंग के प्रत्येक कैरेक्टर पर
shiftलागू करें और जोड़ें
पायथन कार्यान्वयन
class Solution:
def solve(self, s, k):
def shift(c):
i = ord(c) - ord('a')
i = (i + k) % 26
return chr(ord('a') + i)
return "".join(map(shift, s))
ob = Solution()
print(ob.solve("hello", 3))
इनपुट
"hello", 3
आउटपुट
khoor