#P10129. 「Daily OI Round 3」City Planning
「Daily OI Round 3」City Planning
题目背景
只要不失去你的崇高,整个世界都会为你敞开。
题目描述
Provence-Alpes-Côte d'Azur 的管理者们遇上大麻烦了!他们邀请你来解决城市规划的问题。
这群管理者一共有 人,并且这个地区一共有 个城镇,第 个城镇内部又有 个村庄,通过 条道路连接,第 条道路双向连接第 个城镇中的第 和 两个村庄,管理道路的人是第 个,客流量是 。
为了管理组内部的团结,保证每个人在同一个城镇最多管理 条道路。
现在这些城镇中的村庄和村庄之间的道路都遭到了损坏,管理者们急于恢复这些城镇内的交通。这些城镇互相之间有 条高铁,每条高铁连接了 两个城镇,并且当初为了设计的优美,这 个城镇和 条高铁构成了一个二分图。
对于每个城镇 ,你都需要帮助管理组选择一个参数 ,修复一些村庄,编号在 之间的村庄都会被修复,如果道路的两端的村庄都修复了,那么这条道路就会自动修复。因此第 个城镇中会产生 的花费。
对于管理者 来说,如果存在两条他在不同城镇管理的道路都没有被修复,并且这两条道路所属的城镇有高铁直接连接,你需要支付这两条道路的人流量的乘积来弥补损失,这样管理者 才会高兴。(对于任意两条满足上述条件的道路你都需要弥补损失,而不是对于每个管理者只需要弥补一对道路的损失)
为了让管理组的成员都高兴并且给出的方案符合题目的要求(即 ),你需要提前计算好自己至少需要支付多少钱以应对这一群管理者们的刁难。
输入格式
第一行三个整数 表示城镇的数量,城镇间的高铁的数量和管理组人员的数量。
接下来 行每行两个整数 表示这条高铁连接的两个城镇的编号。
接下来 组输入,对于第 组输入,格式如下:
第一行两个整数 表示第 个城镇有 个村庄, 条道路。
第二行 个整数,第 个整数表示当 时的花费 。
接下来 行,每行四个整数 ,表示有一条边连接 号城镇的第 个村庄和第 个村庄,并且管理道路的人是第 个,客流量为 。
输出格式
一行一个整数表示让所有管理者都高兴的最小花费是多少。
2 2 3
2 1
2 1
1 3
3
1 1 2 3
1 1 1 1
1 1 3 3
2 0
7 6
9
3 1 3
1 2
3 2
1 2 3
1 2 1 3
2 3 2 2
2 2
1 100
1 1 1 3
1 2 2 1
5 1
5 0 5 5 5
4 5 1 3
4
5 6 5
4 3
3 5
1 2
2 1
3 4
3 5
2 0
37 44
4 2
33 2 43 49
3 1 3 6
3 4 4 6
6 4
4 23 0 9 35 22
3 4 2 7
3 4 5 3
2 1 3 2
4 4 4 10
3 2
14 41 35
2 2 4 1
3 3 2 5
3 5
27 39 9
3 3 2 1
3 2 3 3
2 1 1 5
2 1 5 3
1 2 4 8
71
提示
【样例解释 #1】
我们可以选择 ,那么花费就是 ,而没有一个管理员你需要讨好。
【样例解释 #2】
我们可以选择 ,那么花费就是 ,但是管理员 在城镇 中管理的道路 不可能被修复,在城镇 中管理的道路 不可能被修复,你就需要花费 的代价讨好管理员 ,总的代价就是 。
你并不需要讨好管理员 ,哪怕他在城镇 和 中分别有一条道路不可能被修复,因为城镇 和 没有高铁相连,所以你不需要为此支付额外的资金。
【数据范围】
对于全部数据保证:,,,,,,,,,,。
个城镇和 条高铁构成的图是一个二分图,每个管理员在同一个村庄管理的道路数量不超过 。
可能有连接同一对城镇的不同的高铁,不会出现自己连向自己的高铁。但城镇中的村庄可能会有自己连向自己的道路,也可能出现连接同一对村庄的不同的道路。