HÀNH TRÌNH DU LỊCH

(tourx.*)

Cô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 \(n\) đ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\) \((m\ \leq \ n \times (n\ - \ 1))\) tuyến đường một chiều khác nhau, tuyến
đường thứ \(j\ (1 \leq j \leq \ m)\) cho phép đi từ địa điểm \(u_{j}\) đến địa điểm \(v_{j}\) với chi phí đi
lại là số nguyên dương \(c(u_{j}\ ,\ v_{j})\). 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 \(k\) địa
điểm du lịch \(s_{1},\ s_{2},\ .\ .\ ,\ s_{k}\ (s_{p}\
eq \ 1\)
𝑣ớ𝑖 \(p\ = \ 1,2,\ .\ .\ ,\ 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},\ .\ .\ ,\ 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 \(k\) địa điểm du lịch \(s_{1},\ s_{2},\ .\ .\ ,\ s_{k}\) sau đó quay về địa điểm du lịch 1 với
tổng chi phí nhỏ nhất.

Dữ liệu vào:

- Dòng thứ nhất chứa ba số nguyên dương \(n,\ m\) 𝑣à \(k\);

- Dòng thứ hai chứa \(k\) số nguyên dương \(s_{1},\ s_{2},\ .\ .\ ,\ 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\). Với \(u_{j}\
eq \ v_{j}\)
; \(c(u_{j}\ ,\ v_{j})\ \leq 10^{9}\ (1 \leq j \leq m)\).
Kết quả:

- Ghi 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.

Ví dụ:

Input Output Hình minh họa
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
19

Ràng buộc:

- Có 80% số điểm của bài có \(n\ \leq \ 100\)\(\ k\ \leq \ 5\).

- Có 20% số điểm còn lại của bài có \(n\ \leq \ 1000\)\(k\ \leq \ 15\).

Bạn cần đăng nhập để nộp bài

hpcode.edu.vn
Code tích cực
Trong 24h
  1. nakato (9/16)
  2. tribinh (6/9)
  3. sythai (4/6)
Trong 7 ngày
  1. bao_khanh (61/90)
  2. nakato (49/122)
  3. phamnhi (26/104)
Trong 30 ngày
  1. phamnhi (74/259)
  2. kiennhientv (72/163)
  3. npk1605 (68/96)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 39162

Lưu Hải Phong - 2020
[email protected]