AT_past201912_m おまかせ

Description

[problemUrl]: https://atcoder.jp/contests/past201912-open/tasks/past201912_m あなたはソーシャルゲームを運営している。このゲームには多数のモンスターが登場し、各モンスターは質量と魔力の二つのパラメータを持つ。 あるユーザは $ N $ 体のモンスターを所持し、$ i $ 体目の所持モンスター $ (1\ \leqq\ i\ \leqq\ N) $ の質量は $ A_i $、魔力は $ B_i $ である。 また、これと別に $ M $ 体のお助けモンスターがおり、$ i $ 体目のお助けモンスター $ (1\ \leqq\ i\ \leqq\ M) $ の質量は $ C_i $、魔力は $ D_i $ である。 ユーザは、これらの $ N\ +\ M $ 体のモンスターからちょうど $ 5 $ 体を選び、それらを合成することができる。ただし、お助けモンスターは $ 1 $ 体までしか選べない。ここで、合成後のモンスターの強さを (使用されたモンスターの魔力の和) / (使用されたモンスターの質量の和) と定義する。 あなたは、合成後のモンスターの強さが最大になるように自動でモンスターを選ぶ機能を実装したい。一度だけ合成を行うとき、合成後のモンスターの強さの最大値を求めるプログラムを作成せよ。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ M $ $ A_1 $ $ B_1 $ $ A_2 $ $ B_2 $ $ : $ $ A_N $ $ B_N $ $ C_1 $ $ D_1 $ $ C_2 $ $ D_2 $ $ : $ $ C_M $ $ D_M $

Output Format

合成後のモンスターの強さの最大値を表す実数を出力せよ。ジャッジの出力との絶対誤差または相対誤差が $ 10^{-6} $ 以下であれば正解と判定される。

Explanation/Hint

### 注意 この問題に対する言及は、2019年12月29日 05:00 JST まで禁止されています。言及がなされた場合、賠償が請求される可能性があります。 試験後に総合得点や認定級を公表するのは構いませんが、どの問題が解けたかなどの情報は発信しないようにお願いします。 ### 制約 - $ 5\ \leqq\ N\ \leqq\ 1,000 $ - $ 1\ \leqq\ M\ \leqq\ 100 $ - $ 1\ \leqq\ A_i,\ B_i\ \leqq\ 100,000 $ - $ 1\ \leqq\ C_i,\ D_i\ \leqq\ 100,000 $ - 入力中の値はすべて整数である。 ### Sample Explanation 1 お助けモンスターを使わず、$ 1,2,4,5,6 $ 番目の所持モンスターを選ぶのが最適である。 ### Sample Explanation 2 今回は強力なお助けモンスターがおり、$ 1 $ 体使うべきである。