Đếm ô vuông trong bông tuyết

Xem PDF



Tác giả:
Dạng bài
Điểm: 777 Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Ban đầu, ta có một bông tuyết có thứ tự là \(1\), đơn thuần chỉ là một ô vuông.
Và ta xây dựng bông tuyết thứ \(k(k\ge 2)\) bằng cách dựng thêm các ô vuông từ các cạnh của bông tuyết thứ \(k-1\)
Để dễ hình dung bạn có thể xem hình minh hoạ bên dưới

Nhiệm vụ của bạn là in ra số lượng ô vuông của bông tuyết thứ \(n(1\le n\le 100)\) ra màn hình.

Input

  • Dòng đầu tiên chứa số nguyên dương \(t(1\le t\le 1000)\) - Thể hiện số testcase
  • \(t\) dòng tiếp theo, mỗi dòng chứa số nguyên dương \(n(1\le n\le 100)\)

Output

  • Ứng với mỗi giá trị của \(n\), hãy in kết quả ra màn hình.

Example

Test 1

Input
3
1
2
3
Output
1
5
13

Bình luận


  • 0
    asdfasdf    3:47 p.m. 18 Tháng 11, 2024

    Số ô vuông với một số n nhỏ:
    n | số ô vuông (k)
    0 | 0
    1 | 1
    2 | 5
    3 | 13
    4 | 25
    6 | 61
    7 | 85
    8 | 113
    9 | 145

    Hint

    Tìm khoảng cách giữa k[n] và k[n - 1] (hay còn gọi là số ô vuông được thêm vào k - 1 để tạo ra k), từ đó suy ra quy luật của chúng.

    Code mẫu Python sử dụng đệ quy
    Python
    t = int(input())
    
    def sf(n):
        if n == 1:
            return 1
        return 4*(n-1) + sf(n-1)
    
    for _ in range(t):
        print(sf(int(input())))
    
    • 2 bình luận nữa