No.50

箱は降順にソートしておく.

番目の箱までを使って, のおもちゃの集合を入れられるかどうかを とし, のおもちゃの集合を 番目の箱に入れられるかどうかを とすると,

となる. ただし, である. これを DP で計算し, が真となっている最小の を求める. ただし, はすべてのおもちゃの集合である.

集合をビットで表現すると も数字で表せる.