首页 > 试题广场 >

牛牛猜节点

[编程题]牛牛猜节点
  • 热度指数:471 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解

牛牛在旅行中经过了一些节点,它注意到,这些节点的值不是随机的,而是有一定的规律:每个节点的值都是其前两个节点值的和。牛牛非常好奇,若是他知道了前两个节点的值,那么第n个节点的值是多少?

请你帮助牛牛实现一个函数,这个函数接收前两个节点的值和一个整数n,返回第n个节点的值。

示例1

输入

1,1,6

输出

8
# 变种斐波那契数列
class Solution:
    def findNthValue(self, first: int, second: int, n: int) -> int:
        # write code here
        f0 = first
        f1 = second
        if n == 1:
            return f0
        if n == 2:
            return f1
        f2 = 0
        for index in range(2, n):
            f2 = f0 + f1
            f0 = f1
            f1 = f2
        return f2
发表于 2024-06-29 20:33:24 回复(0)
class Solution:
    def findNthValue(self , first: int, second: int, n: int) -> int:
        self.first = first
        self.second = second
        return self.getvalue(n)

        
    def getvalue(self, n):
        if n == 1:
            return self.first
        elif n == 2:
            return self.second
        else:
            return self.getvalue(n-1) + self.getvalue(n-2)

发表于 2024-06-05 16:28:50 回复(0)