题解:
1。以前见过类似的,可以cdq分治
当l=r时就是还有一个剩余
这样时间是nmlogn的 空间是mlogn
2。首先我们可以dp出表示出j的方案数
令g[i][j]表示不能选i,表示出j的方案数
考虑一下怎么转移
g[i][j+w[i]]=f[i][j+w[i]]-g[i][j]
这个表示的是,j+w[i]的方案数可以由总方案数-放了i的方案数
这样是nm的