摘要: 背包dp 一道很早以前就见过的dp dp[i][j][k]表示选到第i本书,第一层宽度为j,第二层宽度为k的最小高度,我们先把书按高度排序,然后转移就很方便了,因为高度降序,所以后选的书不影响之前选的,也就是说只有当前层没放过书才用这本书更新,否则维护原来的值,然后滚动数组,卡卡常数就过了 #inc 阅读全文
posted @ 2017-10-13 15:29 19992147 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 记忆化搜索 这是一个dag,肯定会抓住的,所以可以记忆化搜索 然后预处理出p[i][j]表示i,j位置怎么走,记忆化搜索就行了 #include<bits/stdc++.h> using namespace std; const int N = 1010; struct edge { int nxt 阅读全文
posted @ 2017-10-13 10:47 19992147 阅读(125) 评论(0) 推荐(0) 编辑