Đế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())))
    

    • 0
      baonhat    8:41 a.m. 12 Tháng 8, 2024

      ai cần code python bài này nhắn riêng cho mình nha


      • -3
        SBD06_buivanhieuYT    8:15 a.m. 10 Tháng 8, 2024

        include <bits/stdc++.h>

        using namespace std;
        int main() {
        int t;
        cin >> t;
        while (t--) {
        int n;
        cin >> n;
        int kq = 2 * n * n - 2 * n + 1;
        cout << kq << endl;
        }
        return 0;
        }
        code cho những ai cần