Cây khung nhỏ nhất

View as PDF

Submit solution

Points: 1.00
Time limit: 1.0s
Memory limit: 256M
Input: stdin
Output: stdout

Author:
Problem type

Có n thành phố và m con đường. Thật không may, tình trạng đường xá xuống cấp đến mức không thể sử dụng được. Nhiệm vụ của bạn là sửa chữa một số con đường để có một tuyến đường tốt giữa hai thành phố bất kỳ.

Đối với mỗi con đường, bạn biết chi phí sửa chữa của nó và bạn nên tìm giải pháp sao cho tổng chi phí càng nhỏ càng tốt.

Input

Dòng đầu tiên chứa hai số nguyên n và m: số thành phố và số đường. Các thành phố được đánh số 1,2,...,n.

Khi đó có m dòng mô tả các con đường. Mỗi dòng có ba số nguyên u, v, w: có một con đường nối giữa thành phố u và v và chi phí sửa chữa nó là w. Mọi con đường đều là đường hai chiều.

Output

In một số nguyên: tổng chi phí sửa chữa tối thiểu. Tuy nhiên, nếu không có giải pháp thì in ra "IMPOSSIBLE". Hạn chế

~1 \le n \le 10^5~

~1 \le m \le 2 \cdot 10^5~

~1 \le a,b \le n~

~1 \le c \le 10^9~

Examples

Input

5 6
1 2 3
2 3 5
2 4 2
3 4 8
5 1 7
5 4 4

Output

14 

Các con đường được sửa chữa được tô màu đỏ. Tổng chi phí là 3 + 5 + 2 + 4 = 14


Comments

Please read the guidelines before commenting.


There are no comments at the moment.