随笔分类 - 字符串 字符串哈希
摘要:【题目】F. k-substrings 【题意】给定长度为n的串S,对于S的每个k-子串$s_ks_{k+1}...s_{n-k+1},k\in[1,\left \lceil \frac{n}{2} \right \rceil]$,找到满足[奇数长度][严格子串][同时是前缀和后缀]的最长子串。n<
阅读全文
摘要:【题目】D. Acyclic Organic Compounds 【题意】给定一棵带点权树,每个点有一个字符,定义一个结点的字符串数为往下延伸能得到的不重复字符串数,求min(点权+字符串数),n<=300000,time=3s。 【算法】trie合并||hash+线段树合并||dsu on tre
阅读全文
摘要:【算法】字符串hash 【题解】 显然如果字母互不相同,贪心取是正确的。 如果存在字母相同,那么就换成比较后缀和前缀嘛。 但是要注意,不是后缀和前缀相同就能直接跳跃,每次必须只推一位。 取模的哈希比自然溢出慢了好多。 #include<cstdio> #include<algorithm> #inc
阅读全文
摘要:把字符串原样复制一遍放在后面是惯用套路,此时字符串数组开两倍! ★字符串算法的核心是构造失配指针! 【字符串哈希】 双蛤习取模保险,毕竟连自然溢出都是能卡的…… 例题:【CodeForces】961 F. k-substrings 字符串哈希+二分 用于O(1)判断两个字符串是否相等:对于s[i~j
阅读全文
摘要:【算法】 【算法】网络流 【算法】树 【算法】数学 ————【专题】生成树计数(矩阵树定理) ————【专题】计数问题(排列组合,容斥原理,卡特兰数) ————【算法专题】卡特兰数(计数数列) ————【专题】数论 ————【专题】概率和期望 【算法】动态规划 【算法】数据结构 ————【专题】平衡
阅读全文