Travel KTour
Xem PDFCông ty du lịch XYZ chuyên tổ chức các hành trình du lịch trong vùng lãnh thổ gồm điểm du lịch trọng điểm, được đánh số từ \(1\) đến \(n\). Hệ thống giao thông trong vùng gồm \(m\) tuyến đường một chiều khác nhau, tuyến đường thứ \(j\) \((j = 1,2,\ldots,m)\) cho phép đi từ địa điểm \(u_j\) đến địa \(v_j\) đến địa điểm với chi phí đi lại là số nguyên dương. Công ty vừa nhận được một hợp đồng yêu cầu xây dựng một hành trình du lịch xuất phát từ địa điểm du lịch \(1\) và đi thăm địa \(k\) điểm du lịch \(s_1,s_2,\ldots,s_k\), (\(s_p \neq 1\) với \(p=1,2,\ldots,k\)) sau đó quay về địa điểm du lịch \(1\) với tổng chi phí (được tính như là tổng chi phí của các tuyến đường mà hành trình đi qua) nhỏ nhất.
Yêu cầu: Cho thông tin về hệ thống giao thông và \(k\) địa điểm du lịch \(s_1,s_2,\ldots,s_k\). Hãy xây dựng một hành trình du lịch xuất phát từ địa điểm du lịch \(1\) và đi thăm địa \(k\) điểm du lịch \(s_1,s_2,\ldots,s_k\) sau đó quay về địa điểm du lịch \(1\) với tổng chi phí nhỏ nhất.
Input
- Dòng đầu chứa ba số nguyên \(n,m,k\) \((1 \le n \le 10^5,\, k \le 15)\).
- Dòng thứ hai chứa \(k\) số nguyên dương \(s_1,s_2,\ldots,s_k\).
- Dòng thứ \(j\) trong số \(m\) dòng tiếp theo chứa ba số nguyên dương \(u_j,v_j,c(u_j,v_j)\) cho biết thông tin về tuyến đường thứ \(j\). Giả thiết là \(u_j \neq v_j;\ c(u_i,v_j) \le 10^9\) với \(j = 1,2,\ldots,m\).
Output
- Gồm một số nguyên là tổng chi phí nhỏ nhất tìm được. Qui ước: Ghi số \(-1\) nếu không tìm được hành trình du lịch thoả mãn yêu cầu.
Test
Input
6 8 2
2 5
1 2 4
2 4 2
4 3 3
3 1 4
4 1 5
3 5 5
5 3 1
5 6 7
Output
19
Bình luận