摘要:
题意: 一个序列,求k个不相同的长度属于$[L,R]$的区间使得和最大 前缀和,对于每个r找最小的a[l] 然后我yy了一个可持久化线段树做法...也许会T 实际上主席树就可以了,区间k小值 然后看hzwer题解发现还有更有趣的做法,差一点就想到了 $(l,r,x)$表示左端点在$[l,r]$,右端 阅读全文
摘要:
D. Arpa’s letter marked tree and Mehrdad’s Dokhtar kosh paths "CF741D" 题意: 一棵有根树,边上有字母a~v,求每个子树中最长的边,满足这个边上的所有字母重拍后可以构成回文 发明者自己出的题...orz 由于本来知道就是dsu o 阅读全文
摘要:
题意:一棵树,边上有一个个位数字,走一条路径会得到一个数字,求有多少路径得到的数字可以整除$P$ 路径统计一般就是点分治了 $$ a 10^{deep} + b \ \equiv \pmod P$$ $$ a = (P b) inv(10^{deep}) $$ 经过一个点的路径,统计出从根走到一个点 阅读全文
摘要:
"CF291E" 题意:一棵树,每条边上有一些字符,求目标串出现了多少次 直接求目标串的fail然后一边dfs一边跑kmp 然后就被特殊数据卡到$O(n^2)$了... 因为这样kmp复杂度分析的基础就没有了,now指针可能每个孩子都减少n次 所以怒加trie图优化 貌似有人写了倍增+哈希的做法.. 阅读全文
摘要:
题意:给出一个森林,求和一个点有相同k级祖先的点有多少 倍增求父亲然后和上题一样还不用哈希了... cpp include include include include include using namespace std; typedef long long ll; define pii pa 阅读全文
摘要:
题意: 一个森林,求k级后代中多少种不同的权值 用set维护每个深度出现的权值 一开始一直在想删除怎么办,后来发现因为当前全局维护的东西里都是当前子树里的,如果要删除那么当前一定是轻儿子,直接清空set就行了没关系不会把一些要保留的也删除了 哈希直接上map include include incl 阅读全文
摘要:
"传送门" 题意: 一棵树,询问某棵子树指定深度的点能否构成回文 当然不用dsu on tree也可以做 dsu on tree的话,维护当前每一个深度每种字母出现次数和字母数,我直接用了二进制.... 一开始dfs没有判断重儿子T了一次 include include include includ 阅读全文
摘要:
十几天前看到zyf2000发过关于这个的题目的Blog, 今天终于去学习了一下 "Codeforces原文链接" dsu on tree 简介 我也不清楚dsu是什么的英文缩写... 好吧是Disjoint Set Union 并查集2333 就像是 树上的启发式合并 用到了$heavy light 阅读全文
摘要:
测试MarkDown inline int read(){ char c=getchar();int x=0,f=1; while(c'9'){if(c==' ')f= 1;c=getchar();} while(c ='0'&&c引用 "abc" $a=b+c$ $$a=b+c$$ 大大大 dad 阅读全文