摘要: 被FFT的空间卡了半天 后来发现根本不用开那么大... 首先可以把包含舰艇的那个小矩形找出来 将它一行一行连接成一个串T 其中舰艇位置为1其他位置为0 将大矩形也连成串S 其中礁石为1其他为0 两个串匹配起来如果某一位两个串是1和1 则礁石与舰艇会在同一位置不可能到达 那么这个匹配所对应的图中的位置 阅读全文
posted @ 2018-03-30 07:27 Devil_Gary 阅读(142) 评论(2) 推荐(0) 编辑
摘要: 上上周见fc爷用长链剖分秒题 于是偷偷学一学 3522的数据范围很小 可以暴力枚举每个点作为根节点来dp 复杂度$O(n^2)$ 考虑令$f[x][j]$表示以$x$为根的子树内距离$x$为$j$的点的个数$g[x][j]$表示以$x$为根的子树内的点对$(a,b)$距他们的$lca$的距离为$d$ 阅读全文
posted @ 2018-02-08 16:16 Devil_Gary 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 今天主攻了下SAM 好多东西以前都没理解到 对于这道题 我们建一个自动机存所有串 每个穿last从1开始 对于自动机上每个点额外记一个cnt 表示能匹配到这个点的不同串个数 建完对每个串在自动机上匹配 把到的每个点$x$和$par[x],par[par[x]]…$的$cnt++$ 然后就从父亲往儿子 阅读全文
posted @ 2018-02-07 17:01 Devil_Gary 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 好久没写博客了 回去赶了好久文化课 颓欲见长 突然翻到fc爷的KD-Tree板子 来切了到裸题 对于一开始的数据我们可以先预处理 具体的排序方式见板子 其实就是我们对每次选定的一块选一个维度来排序啦 这里算了下方差 选最大的那一维来分下去 #include<bits/stdc++.h> #defin 阅读全文
posted @ 2018-02-06 09:17 Devil_Gary 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 看了半天题 不知道怎么用SAM维护 于是借(chao)鉴(xi)的一发神犇的 只要判断这个子串之前被标记的记号(也就是他属于第几个串)和这次转移到的是否相同 如果不同就说明该子串属于多个串 直接标记-1 依次转移就好咧 最后统计就是ans[f[i]]+... 阅读全文
posted @ 2018-01-12 18:19 Devil_Gary 阅读(99) 评论(0) 推荐(0) 编辑