luogu#P2570. [ZJOI2010] 贪吃的老鼠

    ID: 6608 远端评测题 1000ms 125MiB 尝试: 5 已通过: 1 难度: 6 上传者: 标签>二分答案网络流2010浙江Special Judge

[ZJOI2010] 贪吃的老鼠

题目描述

奶酪店里最近出现了 mm 只老鼠!它们的目标就是把生产出来的所有奶酪都吃掉。奶酪店中一天会生产 nn 块奶酪,其中第 ii 块的大小为 pip_i,会在第 rir_i 秒被生产出来,并且必须在第 did_i 秒之前将它吃掉。第 jj 只老鼠吃奶酪的速度为 sjs_j,因此如果它单独吃完第 ii 块奶酪所需的时间为 pi/sjp_i/s_j。老鼠们吃奶酪的习惯很独特,具体来说:

  1. 在任一时刻,一只老鼠最多可以吃一块奶酪;
  2. 在任一时刻,一块奶酪最多被一只老鼠吃。

由于奶酪的保质期常常很短,为了将它们全部吃掉,老鼠们需要使用一种神奇的魔法来延长奶酪的保质期。将奶酪的保质期延长 TT 秒是指所有的奶酪的 did_i 变成 di+Td_i+T。同时,使用魔法的代价很高,因此老鼠们希望找到最小的 TT 使得可以吃掉所有的奶酪。

输入格式

输入文件的第一行包含一个整数 KK,表示输入文件中数据的组数。

每组数据的第一行包含两个整数 nnmm,分别表示奶酪和老鼠的数量。接下来的 nn 行每行包含三个整数 pi,ri,dip_i,r_i,d_i。最后 mm 行每行包含一个整数,表示 sjs_jpi,ri,di,sjp_i,r_i,d_i,s_j 的含义如上文所述。

输出格式

包含 KK 行,每行包含一个实数,表示你找到的最小的 TT。你的答案和标准答案的绝对误差不应超过 10410^{-4}

2
2 2
13 0 4
10 1 3
4
2
1 1
1 0 2
1

0.5
0

提示

样例说明

第一组数据中:

00 到第 11 秒:

第一只老鼠吃第一块奶酪;

11 到第 3.53.5 秒:

  • 第一只老鼠吃第二块奶酪;
  • 第二只老鼠吃第一块奶酪;

3.53.5 到第 4.54.5 秒:第一只老鼠吃第一块奶酪。

数据规模

30%30\% 的数据中,1n,m51 \le n,m \le 5

100%100\% 的数据中,1K51 \le K \le 51n,m301 \le n,m \le 301pi1051 \le p_i \le 10^50ri<di1070 \le r_i<d_i \le 10^71sj1051 \le s_j \le 10^5