bzoj#P3455. 供电网络
供电网络
题目描述
阿狸和桃子居住的世界里, 只有一个国家, 这个国家有很多城市, 每个城市直接由中央政府管辖。
电力是这个国家的唯一能源, 但是每个城市的发电能力都不一样, 于是就产生了某些城市电力不足, 而某些城市却电力过剩的情况。阿狸作为国家的首席工程师, 阿狸的一项重要工作就是均衡整个国家的电力, 使得每个城市的电力都恰好没有剩余或不足。
好在一些城市之间有电线可以输送电力, 这些电线都有自己的输送上限和下限, 并且输送电力的同时会产生大量的热。
每条电线 发出的热量一定是关于输送电量的一个没有常数项的二次函数, 即 , 并且由于电线是二极管做成的, 很显然只能单向输送电力。每单位热量需要用 单位的金币来冷却. 任何两个城市之间, 至多有一条电线。
不幸的是, 有时电力网络不像我们想的那么完美, 某些情况下可能无论如何都不能满足整个国家的电力需求。这种情况下就只好向别的世界购买电力或者将电力输出给别的世界(注意, 每个城市的电力不能有剩余!), 每个城市买入或者输出电力的价格是不一样的(输出也要花钱)。 由于阿狸的国家没有小数的概念, 输送, 购买或者交换电力的都必须是以整数 为单位.
阿狸的任务是最小化金币的花费($\frac{\text{买入的费用}}{\text{送出的费用}}+\text{电线上发热的冷却费用}$), 他最近被这个问题搞得焦头烂额, 以至于没有时间去陪桃子玩, 结果天天被桃子骂 T_T. 好在有你, 万能的程序猿, 请你编写一个程序来帮阿狸解决这个问题吧。
输入格式
第一行 个整数, 和 , 分别是城市个数和有向电线条数;
接下来 行, 每行 个整数 , 其中第 行表示第 个城市的信息:
-
表示这个城市剩余(负数为不足)的电量;
-
表示这个城市买入或送出一个单位电量的价格。
最后 行, 每行个整数 ,其中第 行表示第 条电线的信息:
-
分别表示电线的开始和结束城市(电力只能从u输送到v);
-
表示电线发热的二次函数的二次项和一次项;
-
表示电线输送电力的下界和上界。
输出格式
仅一个整数, 表示最小的金币花费。
3 2
1 1 1
-2 20 0
-4 20 0
1 2 1 0 0 10
2 3 0 3 0 10
53
样例解释
城市 买入 个单位电力, 花费 ;
城市 输出 个单位电力到城市 , 花费
城市 输出 个单位电力到城市 , 花费 。
总花费 .
提示
对于 的数据满足: $n \leq 200, m \leq 600, u \neq v, 1 \leq u, v \leq n, 1 \leq a, b \leq 3, 1 \leq L \leq 10, 1 \leq L \leq U \leq 100, 0 \leq in, out \leq 100, -5 \leq left \leq 5$。