Đề bài: Viết chương trình nhập vào 2 số n và m. Hãy tính F(n)%m. Với F(n) là số Fibinacci thứ n.
Áp dụng chương trình của bạn để tính với trường hợp n = 999999999 và m = 100.
(Mình thi rồi nha, nên không có vụ hỏi bài tập ở đây, chỉ là để thảo luận đối với đề bài mang tính “giải trí” cao này thôi)
Một số ý kiến:
- Dãy Fibonacci với phần tử thứ 100 là khổng lồ rồi.
- Việc áp dụng BigNum là khá phức tạp và mất thời gian.
- Thay vì tính F(n) thì tính một vài số cuối của F(n) rồi chia lấy dư cho m có cho kết quả chính xác?
Hãy chia sẻ ý tưởng và code của bạn để mọi người cùng test. Hoặc có thể chia sẻ kết quả nếu bạn ngại chia sẻ code.
. Độ phức tạp ~~ log(n)
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?