Tính số Fibo thứ n

View as PDF



Author:
Problem types
Points: 100 (p) Time limit: 1.0s Memory limit: 1023M Input: stdin Output: stdout

\(F_1 = F_2=1\)

\(F_n=F_{n-1}+F_{n-2}\) với \(n > 2\)

Tính \(F_n\)

Input

  • Số test \(t (t \le 5)\)
  • \(t\) dòng, mỗi dòng 1 số nguyên dương \(n (n \le 50)\)

Output

  • \(t\) dòng, \(F_n\)

Example

Test 1

Input
3
1
2
3 
Output
1
1
2

Comments


  • 0
    TDA    9:56 p.m. 7 sep, 2024 edit 3

    test yếu quá ad ưi


    • 0
      vietnammuonnam_mvn    6:28 p.m. 24 aug, 2024

      def precompute_fibonacci(max_n):
      # Tạo mảng để lưu trữ các giá trị số Fibonacci
      fib = [0] * (max_n + 1)
      # Khởi tạo các giá trị đầu tiên
      fib[1] = 1
      if max_n > 1:
      fib[2] = 1
      # Tính toán các giá trị tiếp theo
      for i in range(3, max_n + 1):
      fib[i] = fib[i - 1] + fib[i - 2]
      return fib

      def main():
      # Tiền xử lý các giá trị Fibonacci đến F_50
      max_n = 50
      fib = precompute_fibonacci(max_n)

      # Đọc số lượng test cases
      t = int(input().strip())
      
      # Xử lý từng test case
      results = []
      for _ in range(t):
          n = int(input().strip())
          results.append(fib[n])
      
      # In kết quả
      for result in results:
          print(result)
      

      if name == "main":
      main()
      code acc nè


      • 0
        longdegea11    8:44 p.m. 10 jun, 2023

        Test ít thế