Run me! Problem - Solution - Tìm số fibonacci

import sys
sys.setrecursionlimit(99999)
def f(n):
    return n if n < 2 else f(n-2) + f(n-1)
print "Solve" + str(f(11011))[:32] 

// mình vẫn không chạy được! up lên post này xin được chỉ dẫn

tks mod nhé. quên mất thằng cu fibonacci :slight_smile:

Chương trình của bạn không có gì sai hết, chỉ là bạn không hiểu vì sao nó không chạy thôi :kissing:

1 Like

mua i9 ra, lắp thêm chục Gb RAM và kiên nhẫn chờ :blush:

1 Like

Thời gian chạy tỉ lệ với kết quả của bài toán :smiley:

1 Like

mấy bác trên cứ troll e :frowning: chả nhẽ lại không có cách chạy nó sao. 11011 :frowning:

Công thức này tính được bt mà :smiley: chỉ cần 3 biến thôi.

Tớ mới học đc mười mấy ngày, chỉ góp ý được vậy :grin:

def f(n):
    if n == 0:
        return 0
    elif n == 1:
        return 1
    else:
        return f(n-1) + f(n-2)

i = 11011
print("Solve +", [f(i) for i in range(32)])
Output:
Python 3.6.1 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
   
Solve + [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368, 75025, 121393, 196418, 317811, 514229, 832040, 1346269]

Thớt cũng viết như vậy mà :smiley:

@thớt: trải ra mảng là phù hợp với yêu cầu.

Mình nghĩ dùng cách chạy kia không nổi rồi, đổi giải pháp đi, thử cách dưới
https://www.programiz.com/python-programming/examples/fibonacci-sequence

Không rành Python nhưng cho hỏi đã i in range(32) còn i = 11011 chi vậy :confused:

2 Likes

bài này là của SECCON nè :)), có writeup r bạn ơi

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?