01 2023 档案

摘要:###Before 2SAT 一般形式为 k,简称 kSAT k>2NP完全,暂不考虑,现考虑2SAT ###模型 有若干个包含2个元素的集合,只能选择每个集合中的一个元素,并给出一些条件(例:选a后不能选b),要求求出满足这些条件的选择,这个解也称为$2 阅读全文
posted @ 2023-01-30 09:34 Diamondan 阅读(22) 评论(0) 推荐(0) 编辑
摘要:struct state { int len,link; int nxt[31]; }; char s[N]; int n,ans,t[N],a[N],b[N],O; struct SAM { state st[N*2]; int siz,last; void init() { for(int i= 阅读全文
posted @ 2023-01-29 11:20 Diamondan 阅读(39) 评论(0) 推荐(0) 编辑
摘要:Step1 在每一个循环过程中,先寻找到主元,并将主元通过行变换(无需列变换)移动到矩阵的主对角线上, 然后将主元所在的行内的所有元素除以主元,使得主元化为1 然后观察主元所在的列上的其他元素,将它们所在的行减去主元所在的行乘以一定的倍数, 使得主元所在的列内、 除主元外的其他元素化为0 阅读全文
posted @ 2023-01-28 13:54 Diamondan 阅读(59) 评论(0) 推荐(0) 编辑
摘要:Link: https://codeforces.com/problemset/problem/1473/E CF1473E 分层图最短路 分层图就是说,如果在一个带权图上,我们对于每条路径都可以将其中k条边做一些改变,比如不计算其权值, 那么我们就先建k+1层完全相同的初始图(权值为原值),然后层 阅读全文
posted @ 2023-01-28 10:50 Diamondan 阅读(8) 评论(0) 推荐(0) 编辑
摘要:SA后缀数组 sa数组:sa[i]=x表示对于所有的后缀进行排序(字典序)后,得到排名为i的以第x个字符开头的后缀 rk数组:rk[x]=i,是对于所有的后缀进行排序(字典序)后,得到以第x个字符开头的排名为i的后缀 sa[rk[x]]=rk[sa[x]]=x 常用算法:nlogn的倍增算法 对于每 阅读全文
posted @ 2023-01-14 17:47 Diamondan 阅读(36) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示