Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

TRIP2509 - Bài toán người du lịch

Bài toán Người du lịch (Travelling Salesman Problem)

Tỷ phú Zone là 1 trong những doanh nhân thành công nhất thế giới, bây giờ ông đã già, với số tiền khổng lồ có trong tay, Zone làm các công tác từ thiện ở nhiều nước trên thế giới. Zone sẽ phát triển quỹ từ thiện của mình ở N nước trên thế giới, ông muốn nhân dịp này có luôn 1 chuyến du lịch vòng quang thế giới.

Zone đang ở nước thứ nhất, ông ta muốn tìm 1 hành trình đi qua tất cả các nước còn lại, mỗi nước đúng 1 lần. Tuy giàu có nhưng Zone muốn tiết kiệm chi phí du lịch của mình thông qua các chuyến bay để ông ta có đủ số tiền lớn hơn làm từ thiện. Bạn hãy tìm 1 hành trình tối ưu cho Zone.

Zone đã có danh sách các chuyến bay liên thông giữa các nước và giá vé cho từng chuyến bay. Tuy nhiên có 1 số nước Zone muốn trực tiếp từ nước này sang nước kia vì lý do bất ổn chính trị của 2 nước này.

Input

Dòng 1: ghi 2 số nguyên n, m (n là số nước, m là số chuyến bay trực tiếp giữa 2 nước).

M dòng tiếp theo: Mỗi dòng ghi 3 số i, j, C với ý nghĩa có chuyến bay từ i đến j và ngược lại với giá vé là $ C.

Output

Dòng 1: Ghi tổng chi phí chành trình.

Dòng 2: Ghi số hiệu các nước lần lượt trên hành trình của Zone.

Example

Input:
4 8
1 2 1
2 5 1
5 3 2
3 4 1
1 5 10
5 4 6
2 4 4
3 1 7

Output:
4
1 2 5 3 4

Giới hạn:
1 <= n <= 100
1 <= C <= 108

Chỉ dẫn lịch sử:

Bài toán người du lịch được phát biểu vào thế kỷ 17 bởi hai nhà toán học vương quốc Anh là Sir William Rowan Hamilton và Thomas Penyngton Kirkman, và được ghi trong cuốn giáo trình Lý thuyết đồ thị nổi tiếng của Oxford. Nó nhanh chóng trở thành bài toán khó thách thức toàn thế giới bởi độ phức tạp thuật toán tăng theo hàm số mũ (trong chuyên ngành thuật toán người ta còn gọi chúng là những bài toán NP-hard). Người ta bắt đầu thử và công bố các kết quả giải bài toán này trên máy tính từ năm 1954 (49 đỉnh), cho đến năm 2004 bài toán giải được với số đỉnh lên tới 24.978, và dự báo sẽ còn tiếp tục tăng cao nữa.


Được gửi lên bởi:special_one
Ngày:2009-01-10
Thời gian chạy:0.200s
Giới hạn mã nguồn:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Ngôn ngữ cho phép:C CSHARP CPP JAVA PAS-FPC

hide comments
2017-09-26 09:48:51
nhật hào sạch
2017-03-29 03:07:01
Example like a pussy !!!

Last edit: 2017-03-29 03:08:04
2013-03-06 17:42:59 nguyen dung hoang
Dữ liệu vào và ra sai phải không??????????????????? phải là 5 tp chứ sao lại 4
Input:
4 (5) 8
1 2 1
2 5 1
5 3 2
3 4 1
1 5 10
5 4 6
2 4 4
3 1 7

Output:
4 (5)
1 2 5 3 4

Last edit: 2013-03-06 17:43:52
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.