摘要: 参考: "Splay详解" 1.插入xx数 2.删除xx数(若有多个相同的数,因只删除一个) 3.查询xx数的排名(排名定义为比当前数小的数的个数+1+1。若有多个相同的数,因输出最小的排名) 4.查询排名为xx的数 5.求xx的前驱(前驱定义为小于xx,且最大的数) 6.求xx的后继(后继定义为大 阅读全文
posted @ 2019-10-13 23:20 KirinSB 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 题意: 求$n$个串的最大$LCS$。 思路: 把第一个串建后缀自动机,然后枚举所有串。对于每个串,求出这个串在$i$节点的最大匹配为$temp[i]$(当前串在这个节点最多取多少),然后我们求出最终所有串在$i$节点的匹配最小值$mn[i]$(即为所有串在$i$节点都能取到多少),答案即为$max 阅读全文
posted @ 2019-10-13 17:57 KirinSB 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 题意: 求两个串的最大$LCS$。 思路: 把第一个串建后缀自动机,第二个串跑后缀自动机,如果一个节点失配了,那么往父节点跑,期间更新答案即可。 代码: cpp include include include include include include include include inclu 阅读全文
posted @ 2019-10-13 17:35 KirinSB 阅读(149) 评论(0) 推荐(0) 编辑