dp
文章平均质量分 77
Draven__
这个作者很懒,什么都没留下…
展开
-
G - 2-3 Trees (dp)
点击打开链接求一个含有l个子节点的2,3树一共有多少种形态,对结果取余r因为我们知道最底层(叶子节点)的个数,所以我们可以向上推导,这n个叶子能组成多少个2孩子父节点和3孩子父节点,一层一层向上推导。同时每一层的2子父节点与3子父节点的排列也是造成形态多样的原因。所以 dp[n]=dp[n]+dfs(i+t)*c[i+t][t]dfs(i+t)表示子节点数为i+t的种类原创 2017-07-23 16:04:18 · 485 阅读 · 0 评论 -
A Spy in the Metro UVA - 1025(紫薯第九章)
点击打开链接时间是单向流逝的,是一个天然的序,每一个时间有三个选择:1.等一分钟2.搭上向左开的车(如果有)3.搭上向右开的车(如果有)#includeusing namespace std;typedef long long LL;typedef unsigned long long ULL;typedef pair pii;const int INF=0x3f3f原创 2017-08-20 16:21:31 · 373 阅读 · 0 评论 -
Tour (dp,紫薯第九章)
点击打开链接.解题思路:输入按x轴排序,所以相邻两点连线总距离必短 ,注意这个结论,解释了为什么最后dp[1][2]+dist(1,2),直接加上dist(1,2)本题看似一道几何问题,实际上可以利用动态规划解决。走一圈周长最短可以等价为两个人同时从最左端出发,沿着不同的路径走到最右端。如果定义d(i,j)表示1~max(i,j)全部走过,第一个人在i,第二个人在j原创 2017-08-21 19:37:34 · 358 阅读 · 0 评论