摘要: 很明显的树形DP了,设状态dp[i][0],dp[i][1]。枚举子节点放或不放的两种状态。在此学到一种不同于一般处理的方法,题目要求被两灯照亮的边尽量多,反过来即被一灯照亮的尽量少设为e。又需要的灯尽量少设为v。设M是一个很大的数,则M*v+e即是所求。由于M很大,所以主导作用取决于v,只要v不同... 阅读全文
posted @ 2015-06-02 12:44 chenjunjie1994 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 状态压缩DP,把切割出的面积做状态压缩,统计出某状态下面积和。设f(x,y,S)为在状态为S下在矩形x,y是否存在可能划分出S包含的面积。若S0是S的子集,对矩形x,y横切中竖切,对竖切若f(x,k,S0)且f(x,y-k,S^S0)为真,则为真,对横切同样。然后枚举S的子集即可。可以用记忆化搜索。... 阅读全文
posted @ 2015-06-02 12:40 chenjunjie1994 阅读(446) 评论(0) 推荐(0) 编辑
摘要: 运用部分枚举的思想,很明显完全枚举点的思想是不可能的。改为枚举上下边界,当确定右边界j后,对左边界i,可以有点数为on[j]+on[i]+(leftu[j]-leftu[i])+leftd[j]-leftd[i]。然后取最大值,on[j]+on[i]+(leftu[j]-leftu[i])+left... 阅读全文
posted @ 2015-06-02 12:31 chenjunjie1994 阅读(155) 评论(0) 推荐(0) 编辑