Bài tập lớn · Minh họa thuật toán tô màu đồ thị
Khoang chứavật chất lạ
Phi hành gia mang về nhiều mẫu vật chất, chương trình tự chia chúng vào các ngăn chứa. Có những cặp mẫu để chung sẽ phản ứng. Mỗi mẫu là một đỉnh, mỗi cặp phản ứng là một cạnh, và số ngăn ít nhất chính là sắc số χ(G). Xem thuật toán tham lam theo bài giảng và thuật toán quay lui xếp mẫu từng bước, rồi so sánh kết quả.
- Mẫu vật chất
- 12
- Cặp phản ứng
- 30
- Số ngăn tối thiểu
- 4= χ(G)
- Thuật toán
- 2so sánh
SAMPLE_SET_01KHOANG CHỨA · 12 MẪU
T −182.96°C+01.14
χ(G) = 04 / TỰ XẾPÍT NGĂN NHẤT
Mô tả bài toán
Xếp 12 mẫu vật chất vào ít ngăn nhất
Sau chuyến thu thập qua các hành tinh, phi hành gia mang về 12 mẫu vật chất. Nhưng kho chứa có hạn nên cần tiết kiệm, do đó nhiều mẫu phải để chung một ngăn. Có những cặp để chung sẽ phản ứng: chất oxy hóa gặp nhiên liệu thì cháy nổ, natri gặp nước sinh khí hydro, còn phản vật chất hủy cặp với mọi mẫu khác… (chi tiết như ma trận bên dưới)
Hãy xếp các mẫu vật chất vào ngăn chứa sao cho không ngăn nào chứa cặp phản ứng, dùng ít ngăn nhất có thể.
Cuộn chậm để thấy từng cặp phản ứng nối thành một cạnh của đồ thị.
Đồ thị đang hiển thị là .
Mô hình bài toán
Từ khoang chứa đến tô màu đồ thị
Input
Số mẫu vật chất n (1 ≤ n ≤ 5000) ở dòng đầu, không cần nhập số ngăn. Sau đó là ma trận kề a của đồ thị G = (V, E): n hàng, mỗi hàng n số 0/1 cách nhau dấu cách; a[u][v] = 1 nếu mẫu u phản ứng với mẫu v (cạnh (u, v) ∈ E), ngược lại 0.
Output
Số ngăn ít nhất χ(G) và phép xếp c: V → {0, …, χ − 1}, mẫu v vào ngăn c(v) + 1. Số ngăn do chương trình tự tính.
Ràng buộc
Với mọi cặp phản ứng (u, v) ∈ E thì c(u) ≠ c(v). Ma trận kề đối xứng (a[u][v] = a[v][u]), đường chéo toàn 0 (không có khuyên u–u).
Trình duyệt không hỗ trợ WebGL nên đồ thị 3D bị tắt. Các bước thuật toán vẫn chạy ở bảng bên dưới.
Khoang hàng
Khoang chứa vật chất
Output C++
Khởi tạo
So sánh thuật toán
Cùng một đồ thị, hai chiến lược
—
| Thuật toán | Số ngăn | Số bước | Thời gian | Độ phức tạp |
|---|
Bộ testcase
Kiểm thử trên bộ testcase
—
| Test | n · m | Mong đợi | Tham lam | Quay lui | Thời gian tl / ql | Kết quả |
|---|