问题 1187 --农场游戏

1187: 农场游戏

时间限制: 2 Sec  内存限制: 128 MB
提交: 47  解决: 17
[提交][状态][命题人:]

题目描述

        在网络社区“农场游戏”是一种最受欢迎的游戏。在社区的每个参与者都有一个虚拟的农场。农夫可以决定植物一些种类的作物如小麦和水稻,购买相应的作物种子。他们长大后,农夫可以收割庄稼和出售它们来获得虚拟货币。农民可以种植作物如大豆先进,西瓜和南瓜,以及水果如荔枝和芒果。还可以喂养动物。农夫可以买鸡、兔或牛,喂他们特定的作物或水果。例如,鸡吃小麦。当动物们长大了,可以直接卖出。也可以收集母鸡下的鸡蛋和奶牛产的牛奶。他们可能会比原来的作物有一个更好的出售价格。 销售产品可以得到利润。不同的产品可能有不同的价格。获得了一些产品后,农夫可以决定是否出售或使用它们作为动物饲料获得先进的产品并卖得更高价格。
      杰克正在玩这个在线社区游戏,他想获得尽可能高的利润。他现在的农场有极高水平,已经可以养活各种动物和建立几个生产线将一些产品转换成其他产品。
    简而言之,一些类型的产品可以转换成其他类型的产品。例如,1磅的牛奶可以转化为0.5磅的奶酪,和1磅的作物可以转化为0.1磅鸡蛋等。每一种产品都有一个价格。现在杰克告诉你每一种产品的数量和各种产品之间的转换关系,请帮助杰克计算在出售了所有产品后所能获得的最高收益。
   请注意转换规则:如果产品A可以直接或间接转化成产品B,但产品B不能直接或间接转化回产品A。

输入

       输入包含有多个测试用例。每个测试用例的第一行包含有一个整数N(N < = 10000),表示在杰克的农场有N种产品。产品类别编号为1到N .在接下来的N行数据,其中第i行包含两个实数p和w,表示每磅i类产品的价值为p,杰克有i类产品w磅。
      接下去一行包含有一个整数M(M <= 25000),表示后面的M行描述各种产品之间的转换关系。每一行格式如下:
K a0, b1, a1, b2, a2, …, bk-1, ak-1
K是一个整数,表示后面有2*K+1个数字. 整数ai代表产品的类别。bi是一个实数,表示1磅ai-1类产品可以转化成bi磅ai类产品。
    测试数据中所有K之和不超过50000。测试数据以单独一行整数0表示结束。

输出

针对每个测试样例,输出一个实数q(q<=10^10)表示杰克能获得的最大价值,要求四舍五入到小数点后两位。

样例输入
Copy
2
2.5 10
5 0
1
2 1 0.5 2
2
2.5 10
5 0
1
2 1 0.8 2
0
样例输出
Copy
25.00
40.00

提示

来源

 

[提交][状态]