2684 - [1007] 倍杀测量者

通过次数

2

提交次数

9

时间限制 : 1 秒
内存限制 : 128 MB

今天 Scarlet 在机房有幸目睹了一场别开生面的 OI 训练。因为一些奇妙的 SPJ,比赛中所有选手的得分都是正实数(甚至没有上限)。

当一位选手 A 的分数不小于选手 B 的分数 kk>0)倍时,我们称选手 A k 倍杀 了选手 B,选手 B 选手 A k 倍杀 了。

更奇妙也更激动人心的是,训练前有不少选手立下了诸如 “我没 k 倍杀选手 X,我就女装”,“选手 Y 把我 k 倍杀,我就女装” 的 Flag。

知道真相的良心教练 Patchouli 为了维持机房秩序,放宽了选手们的 Flag 限制。Patchouli 设定了一个 常数 T,立下 “我没 k 倍杀选手 X 就女装” 的选手只要成功 k - T 倍杀了选手 X,就不需要女装。同样的,立下 “选手 Y 把我 k 倍杀我就女装” 的选手只要没有成功被选手 Y k+T 倍杀,也不需要女装。

提前知道了某些选手分数和具体 Flag 的 Scarlet 实在不忍心看到这么一次精彩比赛却没人女装,为了方便和 Patchouli 交易,Scarlet 想要确定最大的实数 T 使得赛后一定有选手 Flag 女装。

输入

第一行三个整数 n,s,t,分别表示机房内选手人数,选手立下的 Flag 总数和 Scarlet 已知的选手分数的数量。n 位选手从 1 开始编号至 n,编号为 i 的选手被称为选手 i

接下来 s 行,每行四个整数 o,A,B,k。其中 o=1 表示选手 A 立下了 “我没 k 倍杀选手 B 就女装” 的 Flag,o=2 表示选手 A 立下了 “选手 B 把我 k 倍杀我就女装” 的 Flag。

接下来 t 行,每行两个整数 C,x,表示 Scarlet 已知选手 C 的分数为 x

输出

若存在能保证赛后有选手女装的最大的 T,则输出 T,只有当输出与答案的绝对误差不超过 10^{-4} 时才被视作正确输出。

若不存在,输出 -1

样例

输入

3 5 1
1 2 1 2
1 3 2 2
1 3 1 4
2 1 2 2
2 1 3 4
1 1

输出

-1

输入

3 2 3
1 2 1 10
2 2 3 6
1 1
2 6
3 9

输出

3.9999993984

提示

  • 对于 100\% 的数据,1\leq n,s\leq 10001\leq A,B,C,t\leq n1\leq k\leq 101\leq x\leq 10^9。保证输入中的 C 两两不同。

来源

luogu