摘要: 习题 "【bzoj4898】[Apio2017]商旅" "【bzoj1690】[Usaco2007 Dec]奶牛的旅行" "【bzoj4819】[Sdoi2017]新生舞会" "【bzoj2402】陶陶的难题II" 阅读全文
posted @ 2018-08-08 12:41 LSQ647 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 先是一些操作。 临时数组还是开static省的乱掉。 参考资料: "https://blog.csdn.net/semiwaker/article/details/73251486" "https://www.cnblogs.com/zwfymqz/p/9132189.html _label10_4 阅读全文
posted @ 2018-07-26 08:56 LSQ647 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 快速沃尔什变换 FWT 也和FFT很像。 c++ //FWT加上类似背包DP void FST(int d[],int a[],int n){ for(int i=1;i 1]+(i&1); for(int i=0;i 练习 【codeforces914G】Sum the Fibonacci 阅读全文
posted @ 2018-07-24 20:16 LSQ647 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 快速数论变换 NTT 和FFT很像。 typedef long long ll; const int P=998244353; inline ll ksm(ll a,ll n){ ll ans=1; for(;n;n =1,a=a a%P) if(n&1) ans=ans a%P; return a 阅读全文
posted @ 2018-07-24 13:12 LSQ647 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 快速傅立叶变换 FFT 理解原理推荐看算法导论。 附个图: //代码学洛谷管理员的 typedef complex C; const double PI=acos( 1); void FFT(int n,C a[],int f){ for(int i=0;i 1] 1)|((i&1) 练习 【BZO 阅读全文
posted @ 2018-07-23 15:25 LSQ647 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 后缀自动机 SAM 不太懂,并不想说什么.. 参考资料: "hihocoder后缀自动机基本概念" "陈立杰的WC课件" "fhq的博客" "俄文论文翻译" 附个$insert$图(来自: "https://www.cnblogs.com/Yuzao/p/7267490.html" ) cpp vo 阅读全文
posted @ 2018-07-22 23:19 LSQ647 阅读(284) 评论(0) 推荐(0) 编辑
摘要: (by 珀石碧 https://www.pixiv.net/member.php?id=15584364) 阅读全文
posted @ 2018-07-21 23:16 LSQ647 阅读(388) 评论(0) 推荐(0) 编辑
摘要: st表。 $O(1)$时间查询 cpp / 倍增建 / void build(){ for(int i=1;i 阅读全文
posted @ 2018-07-21 22:51 LSQ647 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 后缀数组。 $LCP(i,j)$为$suffix(sa[i])$和$suffix(sa[j])$的最长公共前缀 $$LCP(i,j)=min(LCP(k,k 1)),i=h[i 1] 1$$ cpp / 求sa数组,注意两个基数排序时循环要倒着。 记得初始化m。m和n不要写混。 / void get 阅读全文
posted @ 2018-07-19 21:40 LSQ647 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 会陆续更新。 "(无)splay" "(无)fhq非旋treap" "(无)treap" "(无)左偏树" "kd树" "LCT" "(无)树链剖分" "(无)动态树分治" "(无)虚树" "(无)可持久化treap" "st表" "(无)可持久化线段树" "(无)可持久化并查集" "(无)线段树( 阅读全文
posted @ 2018-07-18 22:34 LSQ647 阅读(190) 评论(1) 推荐(0) 编辑