Cho danh sách 4 cạnh, kiểm tra xem chúng có thể tạo thành hình chữ nhật (hai cặp cạnh đối diện bằng nhau). Hình vuông cũng là hình chữ nhật đặc biệt.
Ví dụ: [10, 30, 30, 10] → True (cặp 10 và cặp 30).
Thuật toán
Sắp xếp danh sách, kiểm tra sides[0]==sides[1] và sides[2]==sides[3].
Triển khai
def solve(sides):
sides = sorted(sides)
return sides[0] == sides[1] and sides[2] == sides[3]
sides = [10, 30, 30, 10]
print(solve(sides)) # True
Đầu vào / Đầu ra
Input: [10, 30, 30, 10]
Output: True
Lưu ý: Cách này gọn hơn so với kiểm tra tất cả hoán vị. Cần đảm bảo danh sách có đúng 4 phần tử.