QQuadPollen
Quy trình

Quy trình lập trình · Mã hóa cây tứ phân cho lưới nhị phân

03
Sản phẩm

Quy trình

Mã hóa lưới nhị phân vuông có chiều rộng là lũy thừa của hai đến 16 thành cây tứ phân với lá đồng nhất. Kiểm tra thứ tự trên trái, trên phải, dưới trái và dưới phải, từ chối lưới rỗng, không đều hoặc không nhị phân mà không đổi chúng.

01

Tải ứng dụng

Chọn thư mục và yêu cầu trợ lý đọc các tệp liên quan trước khi chỉnh sửa. Xác định mục tiêu và giới hạn của tác vụ.

02

Mở thư mục dự án

Chọn endpoint tương thích. Công cụ khả dụng và chất lượng phản hồi phụ thuộc vào mô hình và máy chủ đã cấu hình.

03

Kết nối và kiểm tra mô hình

Xem lại thay đổi và đầu ra lệnh. Chạy kiểm tra dự án trước khi chấp nhận kết quả; mã được tạo không mặc nhiên đã qua kiểm thử.

04

Xem thay đổi và chạy kiểm thử

So sánh hành vi thực tế với kết quả mong đợi. Nếu kiểm tra thất bại, tìm nguyên nhân trước khi sửa tiếp.

Mã hóa cây tứ phân cho lưới nhị phân

Quy trình
def encode_quadtree(grid):
    grid = tuple(tuple(row) for row in grid)
    n = len(grid)
    if not 1 <= n <= 16 or n & (n - 1) or any(len(row) != n for row in grid):
        raise ValueError("grid.shape")
    if any(type(v) is not int or v not in (0, 1) for row in grid for v in row):
        raise ValueError("cell.binary")
    def visit(x, y, size):
        value = grid[y][x]
        if all(grid[r][c] == value for r in range(y, y + size) for c in range(x, x + size)):
            return value
        half = size // 2
        return (visit(x, y, half), visit(x + half, y, half),
                visit(x, y + half, half), visit(x + half, y + half, half))
    return visit(0, 0, n)

Kiểm tra trước khi áp dụng. Xem lại thay đổi và đầu ra lệnh. Chạy kiểm tra dự án trước khi chấp nhận kết quả; mã được tạo không mặc nhiên đã qua kiểm thử.

Không gian lập trình với AI

Ý tưởng tiếp theo bắt đầu từ đây.

Tải cho Windows ↗