Problem2856--联络员

2856: 联络员

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 0  Solved: 0
[Status] [Submit] [Creator:]

Description

随着网站的逐步壮大,用户越来越多,同时网站管理员的数目也越来越多。你作为管理层的联络员,希望找到一些通信渠道,使得管理员两两都可以联络(直接或者是间接都可以),由于经费有限,所以你要尽可能的使费用少才可以。
目前你已经知道,通信渠道分为两大类:一类是必选通信渠道,无论价格多少,你都需要把所有的都选上;还有一类是选择性的通信渠道,你可以从中挑选一些作为最终管理员联络的通信渠道。数据保证给出的通信可以让所有的管理员连通。

Input

第一行,两个整数N和M,表示有N个管理员,M个通信渠道
接下来M行,每行四个非负整数,p,u,v,w。
当p=1时,表示这个通信渠道为必选通信渠道;
当p=2时,表示这个通信渠道为选择性通信渠道。
u,v,w表示本条信息描述的是管理员u和管理员v之间的通信渠道,u可以收到v的信息,v也可以收到u的信息,w表示费用。

Output

输出所需要的最少的通信费用

Sample Input Copy

5 6
1 1 2 1
1 2 3 1
1 3 4 1
1 4 1 1
2 2 5 10
2 2 5 5

Sample Output Copy

9

HINT

【样例解释】
1-2-3-4-1存在四个必选渠道,形成一个环,互相可以到达。需要让所有管理员联通,需要联通2号和5号管理员,选择费用为5的渠道,所以总的费用为9。
注意:u,v之间可能存在多条通信渠道,你的程序应该累加所有u,v之间的必选通行渠道


【数据范围】
对于30%的数据,N≤10,M≤100;
对于50%的数据, N≤200,M≤1000 
对于100%的数据,N≤2000,M≤10000

Source/Category