摘要:SDOI2016 因为自己的沙茶犯了低级的沙茶错误而滚粗。 day2原可以AK,却因为眼残脑残只拿到90。 由此可见,细节永远不是一个小问题。 想想过去的日子,还真是舍不得。 但过去的终将过去,未来的总会到来。 OI,再见。 你好,高考。
阅读全文
摘要:【题目链接】 http://www.51nod.com/contest/problem.html#!problemId=1647 【题意】 给定一个n个字符串的Trie,每次询问一个字符串在Trie上的出现次数。 【思路】 将n个字符串构造一个Trie,构造广义后缀自动机,识别Trie中的所有子串。
阅读全文
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=2726 【题意】 将n个任务划分成若干个块,每一组Mi任务花费代价(T+sigma{ tj }+s)*sima{ fi },j属于Mi,T为当前时间,问最小代价。 【思路】 设f[i]为将
阅读全文
摘要:省选前把板子整理一遍,如果发现有脑抽写错的情况,欢迎各位神犇打脸 :) 数学知识 数论: 高精度: 矩阵乘法: 数据结构 树状数组: 线段树: Treap: splay: 主席树: Link-Cut-Tree 图 2-SAT: 有向图的强联通分量: 无向图的边的双连通分量: 最短路: 最小生成树:
阅读全文
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=2111 【题意】 给定n,问1..n的排列中有多少个可以构成小根堆。 【思路】 设f[i]为i个数的方案,设l为左子树大小r为右子树大小,则有: f[i]=C(i-1,l)*f[l]*f[
阅读全文
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1044 【题意】 n根木棍拼到一起,最多可以切m刀,问切成后最大段的最小值及其方案数。 【思路】 对于第一问可以二分后贪心判断。 假设第一问得到的答案为L,设f[i][j]前i个木棍切j下
阅读全文
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=3676 【题意】 给定一个字符串,定义一个串的权值为长度*出现次数,求最大权的回文子串。 【思路】 马拉车求出本质不同的回文子串。 对于一个回文子串,在SAM中用倍增法在O(logn)的时
阅读全文
摘要:【题意】 你可以产生一个回文串,也可以将两个串合并成一个串,问产生目标串需要的最少合并次数。 【思路】 显然我们要先产生目标串中包含的极大回文字符串。 Manacher求出每个位置可以向两边延伸的最长回文串。 则题目转化为有若干条线段,求最少的线段将[1..n]覆盖。贪心DP皆可上,DP需要BIT优
阅读全文
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=2342 【题意】 求出形如w wR w wR的最长连续子串。 【思路】 用manacher算法计算出p[],表示以i与i+1为中心的最长回文字串长度/2 枚举第一个wR的结束位置x,当且仅
阅读全文
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1564 【题意】 给定一个Treap,总代价为深度*距离之和。可以每次以K的代价修改权值,问最小代价。 【思路】 数据值是不变的,因此Treap的中序遍历是唯一的。先将数据按照数据值排序,
阅读全文
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=2190 【题意】 n*n的正方形,在(0,0)格点可以看到的格子数目。 【思路】 预处理出欧拉函数。 (x,y)=1,1<=y<=n,x<y的数对为t=sigma{ phi(i) } 1<
阅读全文
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1806 【题意】 给定一个权在1..3内的序列,在保持相对位置不变的情况下拆分成两个序列,使获益最大。 【思路】 设f[i][a][b][c][d]表示前i个数,分给A的倒数两个为ab,分
阅读全文
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=3594 【题意】 给定一个n个数的序列,有K次将一个区间内的数加1的机会,问最长不下降子序列。 【思路】 首先知道每次加1一个区间为[i,n]肯定不会差。 设f[i][j]为前i个数,还有
阅读全文
摘要:【题目链接】 http://uoj.ac/problem/58 【题意】 有一棵树,结点有自己的颜色,若干询问:u,v路径上的获益,并提供修改颜色的操作。 其中获益定义为Vc*W1+Vc*W2+…+Vc*Wcnt,cnt为经过颜色c的次数。 【思路】 如果没有修改操作就和 苹果树 这道题一样了。 加
阅读全文
摘要:【题意】 回答若干个询问,(l,r,a,b):区间[l,r]内权值在[a,b]的数有多少[种]。 【思路】 考虑使用块状链表实现莫队算法中的插入与删除。 因为权值处于1..n之间,所以我们可以建一个基于权值的块状链表,每个块维护一个区间信息sum,表示权值在该块的数的种数。 这样插入与删除只需要O(
阅读全文
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=3289 【题意】 回答若干个询问:[l,r]区间内的逆序对个数。 【思路】 莫队算法,BIT维护插入删除。 使用BIT维护当前指针l,r内的所有的数。考虑转移部分: l<q[i].l 删出
阅读全文
摘要:【题意】 有若干个询问,询问路径u,v上的颜色总数,另外有要求a,b,意为将a颜色看作b颜色。 【思路】 vfk真是神系列233。 Quote: 用S(v, u)代表 v到u的路径上的结点的集合。 用root来代表根结点,用lca(v, u)来代表v、u的最近公共祖先。 那么 S(v, u) = S
阅读全文
摘要:【题意】 若干个询问sigma{ cnt[i]^2 } cnt[i]表示i在[l,r]内的出现次数。 【思路】 莫队算法,裸题。 一个cnt数组即可维护插入与删除。 【代码】
阅读全文
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=2038 【题意】 给定一个有颜色的序列,回答若干个询问:区间内任选两个颜色相同的概率。 【思路】 设一个颜色在区间内的出现次数为cnt,则抽到这种颜色的概率为: (cnt-1)*cnt/2
阅读全文