Nhiệm vụ của bạn là xác định xem một đồ thị có phẳng không.
Một đồ thị là phẳng nếu nó có thể được nhúng trong mặt phẳng, hay nói cách khác nếu nó có thể được vẽ mà không có bất kỳ cạnh chéo nào.
Đầu vào: Bạn sẽ được cung cấp một biểu đồ vô hướng trong sự lựa chọn của bạn về các định dạng sau:
Danh sách cạnh, ví dụ
[(0, 1), (0, 2), (0, 3)]
Bản đồ điều chỉnh, vd
{0: [1, 2, 3], 1:[0], 2:[0], 3:[0]}
Ma trận liền kề, vd
[[0, 1, 1, 1], [1, 0, 0, 0], [1, 0, 0, 0], [1, 0, 0, 0]]
Tên nút có thể là số, chuỗi hoặc tương tự, nhưng định dạng bạn đã chọn phải có thể hỗ trợ biểu đồ tùy ý. Không đặt mã trong tên nút. Sẽ không có vòng lặp tự.
Lựa chọn tiêu chuẩn của đầu vào, bao gồm STDIN, đối số dòng lệnh và đối số hàm.
Đầu ra: Bạn nên trả về một đầu ra cụ thể cho tất cả các đồ thị phẳng và một đầu ra cụ thể khác cho tất cả các đồ thị không phẳng.
Lựa chọn tiêu chuẩn đầu ra, bao gồm STDOUT, giá trị trả về của hàm.
Ví dụ:
Mặt phẳng:
[]
[(0,1), (0,2), (0,3), (0,4), (0,5), (0,6)]
[(0,1), (0,2), (0,3), (1,2), (1,3), (2,3)]
[(0,2), (0,3), (0,4), (0,5), (1,2), (1,3), (1,4), (1,5), (2,3),
(2,5), (3,4), (4,5)]
Nonplanar:
[(0,1), (0,2), (0,3), (0,4), (1,2), (1,3), (1,4), (2,3), (2,4), (3,4)]
[(0,3), (0,4), (0,5), (1,3), (1,4), (1,5), (2,3), (2,4), (2,5)]
[(0,3), (0,4), (0,6), (1,3), (1,4), (1,5), (2,3), (2,4), (2,5), (5,6),
(7,8), (8,9), (7,9)]
Bất kỳ chức năng nào thực hiện rõ ràng kiểm tra phẳng hoặc tham chiếu cụ thể các nhúng nhúng phẳng đều không được phép.
Đây là mã golf. Có thể mã ngắn nhất giành chiến thắng.