上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 39 下一页
摘要: ODT模板题,ODT适合随机数据下具有维护区间推平操作的序列维护题目,时间复杂度较为玄学。。 代码如下 阅读全文
posted @ 2019-05-31 15:24 shellpicker 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给定一个长度为 N 的序列,每个点有两种状态 1/0,表示占有和空闲,现支持 first fit 查询是否有一段连续的长度为 X 的空闲子序列和区间赋值操作。 题解:get到了线段树新技能。。qwq 区间赋值操作和其他线段树一样,维护标记即可。 查询是否有一段连续的长度为 X 的空闲子序列 阅读全文
posted @ 2019-05-30 21:15 shellpicker 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 题目大意:维护一个长度为 N 的序列,支持单点修改,区间查询最长连续上升子序列的长度。 题解: 线段树维护一段区间左端点开始的 LCIS 长度,右端点开始的 LCIS 长度以及区间最优解。考虑进行合并,合并后区间的最优解可能由三部分构成,即:左区间的最优解、右区间的最优解和左区间rmx+右区间lmx 阅读全文
posted @ 2019-05-30 18:00 shellpicker 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给定一个长度为 N 的序列,每次可以合并相邻的两个元素,代价是两者中较大的值,合并之后的值也为两者较大的值,求合并 N 1 次后的最小代价是多少。 题解: 除了最大值以外,每个值均只会被合并一次,合并的代价一定是这个值左边最大值和右边最大值中较小的那一个。问题转化成了如何求解每个元素左边和 阅读全文
posted @ 2019-05-30 16:27 shellpicker 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给定一个长度为 N 的序列,现选出 M 个点组成一个集合,求这 N 个点到这个集合的最近距离的和是多少。 题解: 状态设计为 dp[i][j] 表示前 i 个点中选出 j 个点的最近距离和是多少,转移显然要枚举上一个选的点在哪里,即:$dp[i][j]=min(dp[k][j 1]+cos 阅读全文
posted @ 2019-05-30 10:38 shellpicker 阅读(402) 评论(0) 推荐(0) 编辑
摘要: 题目大意:题目过长,无法简单描述。。。 题解: 由于树网的核一定是树直径的一段,因此考虑先将直径取出,通过两次 BFS 即可。要求的东西是树上任意一点到这条取出的线段的距离的最大值,发现这个最大值有可能为三个值构成,首先是给定段到树直径的两个端点的距离,其次是树直径外的点到给的给定段的距离的最大值。 阅读全文
posted @ 2019-05-30 00:04 shellpicker 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 题目有点难描述,内容请直接看原题。。 题解: 可以发现人在关路灯时无论走什么样的路径,从宏观上来看被关的灯总是构成一段包含初始点的连续区间。比如要关掉下标为 l (l using namespace std; const int maxn=51; typedef long long LL; int 阅读全文
posted @ 2019-05-29 21:44 shellpicker 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给定一棵 N 个节点的有根树,1 号节点为根节点,现遍历整棵树,要求每条边仅被经过两次,问是否存在一种特定的遍历方式使得 dfs 序中节点的相对前后关系符合给定的顺序。 题解: 首先,由于要求每条边仅能经过两次,可知若正在遍历当前节点 u,则以 u 为根节点的子树中的所有节点都必须遍历,因 阅读全文
posted @ 2019-05-29 15:57 shellpicker 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给定一棵 N 个节点的有根树,1 号节点为根节点,每个点有两种颜色(黑、白),现给出树上每个节点的颜色,求有多少种分割树的方式,使得分割出的每个联通块中有且仅有一个黑点。 题解:树形dp 由于每个点都需要属于一个联通块,且一个联通块中不会有超过1个黑色点。又由于树形dp的状态转移是从子节点 阅读全文
posted @ 2019-05-29 13:00 shellpicker 阅读(331) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给定一棵 N 个节点的树,点有点权,问是否可以将整棵树分成三个权值和均相等的联通块。 题解: 直接模拟整个过程即可,记录 f[u] 表示以 u 为根的子树中的权值和,若 f[u] 为 sum/3,则割断这棵树,在代码中的具体表现为将 f[u] 置零,即:将对 u 的父节点的贡献消去。 代码 阅读全文
posted @ 2019-05-28 15:32 shellpicker 阅读(190) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 39 下一页