Đường đi trong thành phố

View as PDF

Time limit: 2.0s , Memory limit: 512M , Points: 30 (partial)

Giả sử rằng trong thế kỷ 22, phương tiện giao thông chủ yếu sẽ là các phương tiện giao thông công cộng nên để đi lại giữa hai địa điểm bất kỳ trong thành phố, người ta có thể yên tâm chọn đường đi ngắn nhất mà không sợ bị trễ giờ do kẹt xe. Khi mô hình thành phố được chuyển lên Internet, có rất nhiều ý kiến phàn nàn về tính bất hợp lý của nó, đặc biệt, tất cả các ý kiến đều cho rằng hệ thống đường phố như vậy là quá nhiều, làm tăng chi phí xây dựng cũng như bảo trì.

alt text

Ví dụ hình trên các cạnh màu đỏ là được giữ lại, màu đen bị loại bỏ. Hãy lập trình bỏ đi một số đường trong dự án xây dựng thành phố, thoả mãn:

  • Nếu giữa hai địa điểm bất kỳ trong dự án ban đầu có ít nhất một đường đi thì sự sửa đổi này không làm ảnh hưởng tới độ dài đường đi ngắn nhất giữa hai địa điểm đó.

  • Tổng độ dài những đường phố được giữ lại là ngắn tối tiểu.

Input

Dòng thứ nhất chứa số địa điểm n và số đường phố m (Giữa hai địa điểm bất kỳ có nhiều nhất là một đường phố nối chúng); thỏa  n\le 200; 0 \le m \le \frac{n(n-1)}{2}.

m dòng tiếp theo, mỗi dòng ghi ba số nguyên dương u, v, c: cho biết có đường hai chiều nối giữa hai địa điểm u, v và độ dài con đường đó là c.

Output

Dòng thứ nhất ghi hai số k, d. Ở đây k là số đường phố còn lại còn d là tổng độ dài của các đường phố còn lại.

Samples

Sample Input 1
10 12
1 2 1
1 5 1
2 6 7
3 4 1
3 7 2
4 8 8
5 6 3
6 7 1
6 9 2
7 8 5
7 10 8
9 10 4
Sample Output 1
9 20

Comments