मान लीजिए हमारे पास दो स्ट्रिंग्स s, t और एक अन्य धनात्मक संख्या n भी दी गई है, हमें अनुक्रम A का nवां पद लौटाना है जहां:
A[0] = sA[1] = t- जब
nसम हो तोA[n] = A[n-1] + A[n-2], अन्यथाA[n] = A[n-2] + A[n-1]।
उदाहरण के लिए, यदि s = "a" और t = "b", तो अनुक्रम A होगा: ["a", "b", "ba" ("a"+"b"), "bba" ("b"+"ba"), "bbaba" ("bba"+"ba")]।
उदाहरण के लिए, यदि इनपुट है s = "pk", t = "r", n = 4, तो आउटपुट होगा "rrpkrpk"।
हल करने के चरण
- यदि
n == 0, तोsलौटाएं। - अन्यथा यदि
n == 1, तोtलौटाएं। a := s,b := tiको 2 सेnतक:- यदि
i % 2 == 0, तोc := b + a। - अन्यथा,
c := a + b। a := bb := c
- यदि
cलौटाएं।
उदाहरण
class Solution:
def solve(self, s, t, n):
if n == 0:
return s
elif n == 1:
return t
a = s
b = t
for i in range(2, n+1):
if i % 2 == 0:
c = b + a
else:
c = a + b
a = b
b = c
return c
ob = Solution()
print(ob.solve("pk", "r", 4))
इनपुट
"pk", "r", 4
आउटपुट
rrpkrpk