随笔分类 - 字符串
[校内训练2021_03_25]BC
摘要:题目大意:求一个 有标号树的 本质不同的 有根点分树 数量。要求平方。 思考:咕咕咕 1 #include<bits/stdc++.h> 2 #define mod 1000000007 3 using namespace std; 4 typedef long long int ll; 5 con
阅读全文
[校内训练2021_02_25]C
摘要:题目大意:给出一个字符串,对于它的每个前缀S,求出S所有子串(不要求本质不同)的所有前缀在border树上的(深度-1)的和。例如,对于字符串abab,它的第四个前缀S4=abab,有子串a,b,a,b,ab,ba,ab,aba,bab,abab,他们的所有前缀在border树上的(深度-1)的和分
阅读全文
[校内训练20_10_15]ABC
摘要:A.雅礼集训convex 回滚莫队:莫队时若发现删除、添加中有一个容易操作(O(1)),有一个不容易操作(>O(1))就可以使用这种方法。 1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef long long int ll; 4 t
阅读全文
[校内训练20_09_15]ABC
摘要:1.k个横着的障碍物(均在x轴上方),n个关健点(均在x轴上方),m个询问,问在某个坐标能看到多少个关键点(均在x轴下方)。k≤50,n,m≤100000,强制在线。 我只能说障碍物的两个端点很重要,因为它是许多关键直线的交点。这样判断一个点左侧有多少直线就只和与端点的连线的倾斜角有关了。 1 #i
阅读全文
[校内训练20_05_30]ABC
摘要:1.一棵树,边权为1,每次给两个点a,b,d1,d2,找到任意一个到a距离为d1,到b距离为d2的点。 大力分类讨论即可。 1 #include<bits/stdc++.h> 2 using namespace std; 3 const int maxn=1E6+5; 4 int n,q; 5 in
阅读全文
[家里训练20_02_28]ABC
摘要:A:有字符串A和B,若A和B匹配,那么字符集存在一个单射,使得F(A)=B。现在给出长度为n的序列和长度为m的序列,问第一个序列中有多少子串与第二个序列匹配。 回想kmp的过程,事实上,只要“等于号”满足传递性就可以进行匹配。 看代码就知道了。 1 #include<bits/stdc++.h> 2
阅读全文
[校内训练19_09_02]原样输出
摘要:题意 给出n个字符串,每个字符串的开头和结尾可以去除一些连续的子串,也可以不删。问这样删去后连成的不同字符串有多少个。要求线性。 思考 如果是一个字符串,那么建一颗SAM即可。 因为是几个字符串拼在一起,那么在某个字符串的SAM上的某一个点,随时都可以跳到下一个字符串的SAM上的某个一点。那么从后往
阅读全文
[CF1037H]Security
摘要:题意 https://codeforces.com/contest/1037/problem/H 思考 贪心的思路是,尽可能多地找到读入串的一段前缀,然后再添上一个字典序比较大的字符。 先对原串建立SAM,考虑到有区间限制,需线段树合并维护endpos集合。 对于一个询问,我们现在SAM上找对它的前
阅读全文
线性最长cover(无讲解)
摘要:1 #include<bits/stdc++.h> 2 using namespace std; 3 const int maxn=1E6+5; 4 int n,f[maxn],cover[maxn],R[maxn]; 5 char str[maxn]; 6 int main() 7 { 8 ios
阅读全文
浙公网安备 33010602011771号