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

TOURS13 - VOI 2013 - Hành trình du lịch




Công ty du lịch X có dự á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 tới 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, 3, …, m) cho phép đi từ địa diểm uj đến dịa diểm vj với chi phí đi lại là một số nguyên dương c(uj, vj). Vấn đề đặt ra cho công ty là xây dựng các hành trình du lịch cho mỗi điểm du lịch. Một hành trình du lịch cho địa điểm du lịch i phải được xây dựng sao cho xuất phát từ địa điểm i đi qua một số địa điểm khác rồi quay lại địa điểm xấu phát i 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.

Input

Dòng đầu tiên số T là số lượng bộ dữ liệu. tiếp đến là T nhóm dòng, mỗi dòng cho thông tin về một bộ dữ liệu theo khuôn dạng sau :

  • Dòng thứ nhất chứa 2 số nguyên dương n, m
  • Dòng thứ j trong số m dòng tiếp theo chứa ba số nguyên duong uj, vj, c(uj, vj) cho biết thông tin về tuyến đường thứ j. Giả thiết là uj ≠ vj; c(uj, vj) < 10^6; j = 1, 2, …, m

Output

Gồm T nhóm dòng tương ứng với T bộ test vào, mỗi nhóm dòng gồm n dòng, dòng thứ i ghi chi phí của hành trình du lịch cho địa điểm i. Qui ước: Ghi số -1 trên dòng i nếu không tìm được hành trình du lịch cho địa điểm i thỏa mãn yêu cầu đặt ra

Example

Input:

1

6 8

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:

11

11

6

11

6

-1

Ràng buộc:

  • Có 30% số test tương ứng với 30% số điểm của bài có n <= 20.
  • Có 30% số test tương ứng với 30% số điểm của bài có 20 < n <= 100, m <= 104.
  • Có 40% số test tương ứng với 30% số điểm của bài có 100 < n <= 103, m <= 105

Được gửi lên bởi:VOJ Team
Ngày:2013-01-12
Thời gian chạy:1s
Giới hạn mã nguồn:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Ngôn ngữ cho phép:Tất cả ngoại trừ: ASM64 GOSU PERL6 PYPY RUST SED
Nguồn bài:VOI 2013 - Ngày 2

hide comments
2014-12-26 17:24:21 The Flash
dùng djkstra +heap nhưng chỉ được 64 điểm thôi các bạn thi điểm cao chỉ với
2014-12-15 17:51:00 Sơn Tùng M-TP
FBM 86d
Dijkstra + Heap 40
???
2014-12-06 13:56:27 Virus
Dijkstra heap và đã làm như lời Hoàng Steven, nhưng chỉ được 64 điểm :'(
2013-12-30 11:12:33 !
tớ dùng dijkstra bt chi dc 34d,dung dijkstra heap chi dc 84.AC mai chua dc

2013-12-27 15:20:11 Xiao Lang
N kích thước có 1000, 1000*1000*Log(2,100000) chạy ngon mỗi tội TLE ở cái...
Dữ liệu vào gồm T test...

Last edit: 2013-12-27 15:20:26
2013-12-27 15:16:12 Xiao Lang
Dijkstra n đỉnh :D
2013-12-22 09:59:30 ngkhoi
dùng dijkstra heap vẫn chỉ 86, có thuật toán nào hiểu quả hơn không nhỉ?
2013-12-17 10:00:29 Khắc Bảo
Vậy là mình phải dh\jkstar tất cả các đỉnh trong đồ thị hay chỉ cần dihkstar 1 đỉnh
2013-12-16 16:54:07 Xiao Lang
Dijkstra bình thường có điều lúc Dijkstra lần đầu mình khởi tạo cái đỉnh xuất phát là d[s]=0 đó, sau khi tìm các đỉnh kề với đỉnh s rồi thì cho d[s]=maxlongint rồi tiếp tục. Trong các quá trình tiếp theo nó sẽ tối ưu lại nhãn d[s] và kết quả chính là d[s] là 1 tour ngắn nhất đó. Cách này vẫn TLE không biết tại máy chấm yếu hay tại mình code chạy lâu nữa. 90 điểm hết cỡ
2013-12-10 15:06:14 Khắc Bảo
Mình làm theo cách Dijkstra tất cả các đỉnh dồ thị. Duyệt tất cả các đỉnh, với mỗi đỉnh tìm j sau cho D[i,j]+D[j,i] nhỏ nhất. mà sao có 4d à hjx
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.