สมมติว่ามีตัวเลข n เราต้องหาตัวเลขฟีโบนัชชีลำดับที่ n โดย f(i) = f(i-1) + f(i-2) สองตัวแรกคือ 0, 1
เช่น ถ้าอินพุตคือ 15 ผลลัพธ์จะเป็น 610
ขั้นตอนการแก้ปัญหา
- first := 0, second := 1
- for i ในช่วง 2 ถึง n ทำ
- temp := first + second
- first := second
- second := temp
- คืนค่า second
ตัวอย่างโค้ด
class Solution:
def solve(self, n):
first = 0
second = 1
for _ in range(2, n+1):
temp = first + second
first = second
second = temp
return second
ob = Solution()
print(ob.solve(15))
อินพุต
15
เอาต์พุต
610