随笔分类 -  区间dp

摘要:逆时针给出n个点,这n个点形状构成正n边形 给出矩阵,表示任意两点间是否允许有边,求问有多少种连边的方法使这n个点构成一颗树,且线段两两不在除这n个点外的地方相交 显然当i和j相连,线段将剩余的点划分为线段的左右两个部分,自然联想到使用区间dp 以dir[i][j]表示将i到j间的所有点构成一棵树, 阅读全文
posted @ 2018-08-29 15:18 xFANx 阅读(384) 评论(0) 推荐(0)
摘要:给定一个序列,问这个序列是否能够构成一个二叉搜索树,使得任一边连接的点的gcd大于1 区间dp lang:cpp include include include using namespace std; typedef long long LL; const int maxn = 710; int 阅读全文
posted @ 2018-08-21 19:52 xFANx 阅读(242) 评论(0) 推荐(0)
摘要:所谓区间dp,顾名思义就是在一段区间上的动态规划。它既要满足dp问题的最优子结构和无后效性外,还应该符合在区间上操作的特点。我的理解是往往会对区间进行合并操作。抑或是单个元素(可看成一个小区间)跨区间进行操作。例如括号匹配问题,石子合并问题(通过多次的相邻合并,最后实质上会产生跨区间的合并,如果你把 阅读全文
posted @ 2017-07-17 10:26 xFANx 阅读(6369) 评论(0) 推荐(2)