会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
dfydn
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
10
11
12
13
14
15
16
17
18
···
29
下一页
2020年3月9日
洛谷 P2602 [ZJOI2010]数字计数(数位DP)
摘要: 题目链接:https://www.luogu.com.cn/problem/P2602 这道题大意是求某区间内数字0-9出现的次数。 分别统计区间内存在1个1,2个1,3个1……的数的个数,存在1个2,2个2,……,1个9,2个9,……的数的个数,然后求累加:累加的是次数*个数。 注意前导0和DFS
阅读全文
posted @ 2020-03-09 19:34 dfydn
阅读(176)
评论(0)
推荐(0)
2020年3月7日
HDU 2089 不要62(数位DP)
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2089 一道数位DP上手模板题,并且无需考虑前导0的影响。 关于数位DP的资料 https://www.lagou.com/lgeduarticle/9599.html 数位DP 是对数字的“位”进行的和
阅读全文
posted @ 2020-03-07 22:51 dfydn
阅读(154)
评论(0)
推荐(0)
洛谷 P2414 [NOI2011]阿狸的打字机(Fail树 || DFS序 || 树状数组)
摘要: 题目链接:https://www.luogu.com.cn/problem/P2414 由于Fail指针指向 “这个串的最长后缀”。而指向的那个点又是某个字符串的前缀。所以后缀的前缀是子串。 然后可以直接建出Fail树,建树时,如果$'B'$,那么就返回到这个节点的父亲,如果$'P'$,就把这一组存
阅读全文
posted @ 2020-03-07 09:27 dfydn
阅读(140)
评论(0)
推荐(0)
2020年3月3日
洛谷 P3966 [TJOI2013]单词(AC自动机 || Fail树)
摘要: 题目链接:https://www.luogu.com.cn/problem/P3966 对于这一道题,可以对所有单词建出AC自动机,然后将每个节点x和fail[x]之间连一条边,这样可以形成一个树:fail树。 根据fail树的一些性质: ①:每个节点都是一个字符串的前缀,并且每个字符串的前缀一定在
阅读全文
posted @ 2020-03-03 20:44 dfydn
阅读(235)
评论(0)
推荐(1)
2020年2月23日
洛谷 P3796 【模板】AC自动机(加强版)(AC自动机)
摘要: 题目链接:https://www.luogu.com.cn/problem/P3796 AC自动机:复杂度$O( (N+M)\times L )$,N为模式串个数,L为平均长度,M为文章长度。 insert: 构造一个trie,然后标记一下每一个模式串的最后一个,即$vis$。 get_fail:
阅读全文
posted @ 2020-02-23 22:43 dfydn
阅读(167)
评论(0)
推荐(0)
2020年2月22日
BZOJ 2342 [Shoi2011]双倍回文(Manacher)
摘要: 题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=2342 题意:求最长子串使得它有四个相同的回文串SSSS相连组成。 首先跑一边Manacher,初始化出以每一个点为最长回文串的左端点,然后按左端点排序。 枚举中间点$x$,然后找右面的中间
阅读全文
posted @ 2020-02-22 10:21 dfydn
阅读(91)
评论(0)
推荐(0)
2020年2月20日
BZOJ 2084 [Poi2010]Antisymmetry(Manacher)
摘要: 题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=2084 首先一个反对称其实就是在原串上的回文,只不过回文相等的判断要修改成: 然后跑一遍Manacher,最后注意$ans+=p_i\div 2$就是“回文”的总数(注意有不饱和回文串)。
阅读全文
posted @ 2020-02-20 20:17 dfydn
阅读(144)
评论(0)
推荐(0)
2020年2月19日
洛谷 P4555 [国家集训队]最长双回文串(Manacher)
摘要: 题目链接:https://www.luogu.com.cn/problem/P4555 首先明白两个回文串,那么要使两个回文串成立,那么我们只能把$'#'$作为中间节点。 然后我们跑一边Manacher,记录$l[],r[]$,$l[i]$表示以$i$开头的最长回文串长度,$r[i]$表示以$i$结
阅读全文
posted @ 2020-02-19 22:01 dfydn
阅读(253)
评论(0)
推荐(0)
2020年2月17日
洛谷 P1659 [国家集训队]拉拉队排练(Manacher)
摘要: 题目链接:https://www.luogu.com.cn/problem/P1659 思路: 首先跑一遍Manacher,用$cnt_i$记录长为$i$的回文串有多少个。 所记录的$cnt$并不是最终的$cnt$,如$cnt_1$在$cnt_2$中也有,可用$sum=cnt_1+cnt_2$,然后
阅读全文
posted @ 2020-02-17 22:04 dfydn
阅读(237)
评论(0)
推荐(0)
2020年2月16日
洛谷 P3805【模板】manacher算法
摘要: 题目链接:https://www.luogu.com.cn/problem/P3805 Manacher算法$O(n)$: 求以每个字符为中心的最长回文串的半径:如果要求可以以字符间隙为回文中心,就要在每两个字符之间加入一个’#’,在开头加上'$',然后再解决。 $pos$表示回文字串的对称轴,$m
阅读全文
posted @ 2020-02-16 22:32 dfydn
阅读(176)
评论(0)
推荐(0)
上一页
1
···
10
11
12
13
14
15
16
17
18
···
29
下一页
公告