随笔分类 - 线段树
摘要:background 一开始的时候一脸懵逼,然后旁边syk神仙说了一句"按长度排序",突然恍然大悟 题意 solution 离散化+按长度排序 然后two points 扫一遍,右端点每右移一位,就把该点对应的区间+1,左端点每右移一位,就把该点对应的区间-1,如果总区间的最大值 >=m则可行 co
阅读全文
摘要:题意 给出一颗树的括号序,有m个操作,每次交换两个括号,保证交换后括号序仍然合法,输出每次操作后(包括未操作时)树的直径 solution 首先转化题目,对于一棵树的括号序,我们找到一段子串,满足将其中匹配的括号消去后剩下的括号最多,那么剩下的括号个数即为所求直径 这样一棵树括号序为()(()) 取
阅读全文
摘要:QY 大神仙:这就是SAM大水题,快切快切 然而还没怎么理解SAM的我表示对着题解一脸懵逼 设原串为s; 对于后缀自动机上的一个点i,定义dp[i]为点i表示的字符串的答案(最长嵌套次数) 显然点i应从fa[i],fa[fa[i]]等endpos包含endpos(i)的节点转移过来,为什么呢? 因为
阅读全文
摘要:题意 给你一个序列 把这个序列的每一个不下降子序列拿出来 对于每一个子序列,一个可行序列为: 1.由正整数组成,长度和原子串相同 2.不大于原子串 求所有,所有的可行串 solution dp 设$dp_i$为以i为结尾的所有可行串的总数 对于最简单的严格单调递增序列有(即样例2) $dp_i$=(
阅读全文
摘要:题意: 有n辆公交车,每辆公交车有s(起始点),f(终点),t(发车时间) (行驶不需要时间) 有m个人,每个人有l(起点),r(终点),t(出现时间) 每个人出现后会选择最早经过他且可行的公交车 (即满足s<=l,r<=f,且公交车发车时间晚于人出现时间) 输出每个人会选择那一辆公交车 solut
阅读全文