上一页 1 2 3 4 5 6 ··· 10 下一页
摘要: Border 的四种求法 给定一个串,q次询问[l,r]的border长度。 思路 首先先对整个串建sam,然后我们对包含r的每一个状态去计算。 设当前状态的最大长度为len,如果一个结束位置i是合法的,当且仅当$l\leq i i len$,我们对于每一个节点维护一个以i为下标的线段树,每个节点的 阅读全文
posted @ 2019-03-13 16:23 ylsoi 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 题目大意 维护一个栈,每次区间压栈,单点弹栈,区间询问栈顶的元素和。 思路 如果没有弹栈的操作的话,我们每一次只需要在一颗线段树上面区间赋值即可。 加上弹栈操作,我们每次就需要知道当前栈顶元素的上一个元素是什么,考虑用主席树来维护每一个时刻每一个位置的最近一次的修改位置。 假设当前的时间为x且我们需 阅读全文
posted @ 2019-03-11 21:46 ylsoi 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 题目大意 求仙人掌上最短路. 思路 将仙人掌上的所有环给建立方点,所有环上的点作为圆点连在方点上面. 考虑一个以1为根的树型结构,我们将所有环上的点和方点的距离设为该点离环上深度最小的点的最小距离. 这样利用树上倍增来求解两点之间距离后,我们发现跨过的环(方点)上的路程就是环上的点离环上深度最小的点 阅读全文
posted @ 2019-03-03 20:17 ylsoi 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 题目大意 有一个3 × n的棋盘,你在上面玩游戏。开始时,棋盘有一些格子上已经摆上了棋子,剩下的格子都是空的。每次你可以选择一个空的格子摆上棋子,这个格子必须满足以下两个条件之一: 1. 这个格子上下两格都有棋子; 2. 这个格子左右两格都有棋子。 你想知道有多少种不同的摆满棋盘的摆放顺序。 思路 阅读全文
posted @ 2019-02-27 15:29 ylsoi 阅读(622) 评论(0) 推荐(0) 编辑
摘要: 题目大意: "这是链接" 思路: 考虑动态规划,设$f_{S}$表示$S $集合中的点的划分的满意度之和,设$t_{S}$表示$S$集合中的点是否合法,$w_S $表示$S$集合中的点的权值之和,那么可以得到方程: $$ f_{S}=\sum_{T\subseteq S}f_{S T}\times 阅读全文
posted @ 2019-02-21 16:36 ylsoi 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 题目大意: 给定一个母串和若干个询问串,求每个询问串有多少个本质不同的子串没有在母串中出现过。 思路: ION2017的串我们称为S串,ION2018的串我们称为T串。 先考虑68pts怎么去做。 考虑T串有多少个子串未在S串中出现过,于是将S建立SAM,然后将T丢进S的SAM里跑子串匹配,这样我们 阅读全文
posted @ 2019-02-20 21:01 ylsoi 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 题目大意: 给定两个串,求有多少种方式从两个串中各提取出一个子串并且两个子串相等。 思路: 涉及两个串的子串问题考虑对第一个串建立SAM。 然后用第个二串在SAM上匹配,每到一个点,贡献是(目前的长度 这个状态的父亲的长度)x这个状态RIGHT集合的大小,同时对这个状态的每个祖先也像这样计算贡献即可 阅读全文
posted @ 2019-02-14 18:12 ylsoi 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 题目大意: 求随机点分治的期望复杂度,每次对一颗大小为$n$的子树需要$O(n)$的复杂度。 思路: 考虑计算每个点期望下被算的次数,根据期望的线性性,最后将每个点的答案加起来就可以了。 计算点u的计算次数可以考虑v对点u的贡献,即在v作为分治重心的时候u在v所在的子树里面。 不难发现如果v对u产生 阅读全文
posted @ 2019-02-13 14:24 ylsoi 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 题目大意: 给定一颗带边权的树,求一条路径使得这条路径上的边权的平均值最接近一个给定的值。 思路: 既然是求平均值,那么自然而然就想到了分数规划了, 即最小化$|\frac{\sum_{i=1}^{{len}}w_i}{len} k|$。 然后二分答案$x$,考虑是否存在比$x$更优的答案:$|\f 阅读全文
posted @ 2019-02-13 14:24 ylsoi 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 题目大意: 一个无向连通图,顶点从1编号到N,边从1编号到M。 小Z在该图上进行随机游走,初始时小Z在1号顶点,每一步小Z以相等的概率随机选 择当前顶点的某条边,沿着这条边走到下一个顶点,获得等于这条边的编号的分数。当小Z 到达N号顶点时游走结束,总分为所有获得的分数之和。 现在,请你对这M条边进行 阅读全文
posted @ 2019-02-11 13:42 ylsoi 阅读(210) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 10 下一页