Một Graph Graceful là một loại đồ thị đơn giản . Các biểu đồ duyên dáng rất đặc biệt vì có một cách để gắn nhãn tất cả các nút của chúng bằng các số nguyên dương để khi các cạnh cũng được gắn nhãn với sự khác biệt của các nút mà chúng kết nối, không có hai cạnh nào có cùng nhãn và mỗi nhãn cho đến số cạnh Được sử dụng.
Ví dụ làm việc
Đây là một biểu đồ đơn giản mà chúng tôi nghi ngờ là một biểu đồ duyên dáng
Hãy để chúng tôi thử ghi nhãn sau:
Lưu ý chúng tôi được phép bỏ qua các số nguyên trong ghi nhãn nút của chúng tôi. Bây giờ chúng tôi dán nhãn cho mọi cạnh với sự khác biệt tích cực giữa các nút mà nó kết nối. Để tăng khả năng hiển thị, tôi đã dán nhãn này bằng màu đỏ.
Mỗi cạnh có một số duy nhất và không có số nào nằm trong khoảng từ 1 đến 7 (số cạnh chúng ta có) bị bỏ lại. Do đó đồ thị của chúng tôi là duyên dáng.
Bài tập
Đưa ra một biểu đồ, thông qua bất kỳ phương pháp nhập liệu hợp lý nào, sẽ đưa ra một giá trị trung thực nếu nó là duyên dáng và một giá trị giả mạo khác.
Đây là môn đánh gôn, vì vậy mục tiêu là giảm thiểu số byte của bạn.
Các trường hợp thử nghiệm
Ở đây đồ thị được biểu diễn dưới dạng một mảng các cạnh:
3 nodes:
[(0,1),(0,2),(1,2)]
True
Labeling:
Node 0 -> 0
Node 1 -> 2
Node 2 -> 3
5 nodes:
[(0,1),(0,4),(1,2),(2,3),(3,4)]
False
5 nodes:
[(0,1),(1,2),(2,3),(3,4)]
True
Labeling:
Node 0 -> 0
Node 1 -> 1
Node 2 -> 3
Node 3 -> 6
Node 4 -> 10
9 nodes
[(0,1),(1,2),(1,7),(1,8),(2,3),(2,6),(3,4),(4,5)]
True
Labeling:
Node 0 -> 0
Node 1 -> 1
Node 2 -> 3
Node 3 -> 6
Node 4 -> 10
Node 5 -> 15
Node 6 -> 11
Node 7 -> 7
Node 8 -> 8
5 nodes
[(0,1),(0,2),(1,2),(1,3),(1,4),(3,4)]
False
[(0,1),(1,2),(2,3),(3,4)]
có lẽ là một trường hợp cạnh đáng chú ý.
{(k-1,k) : 0 < k < n}
yêu cầu nhãn cao nhất trong tất cả các biểu đồ có cùng số nút.
n(n+1)/2
như nhãn hiệu cao nhất của họ. Tôi đã thêm trường hợp thử nghiệm của bạn.