SRM 308 Div2 Hard TreasuresPacking

n個のそれぞれ重さw[k]、価値c[k]の宝物(0≦k<n)、
m個のそれぞれ重さw[k]、価値c[k]の宝物(0≦k<m)がある。

これを重さの合計W以下で価値の和が最大になるよう梱包したい。
ただし最初のn個の宝物は分けることが出来ないが、m個の宝は好きな(実数の)重さに分けて詰めることができる。

このとき詰めることの出来る宝物の価値の最大値を返せ。


ナップザック問題+貪欲法。
n個の宝物は典型的なナップザック問題。
n個を詰め終えた時点でのそれぞれの最適解候補に対して、
m個の宝物を「隙間」に貪欲に詰めていく。