
字符串
听香人
这个作者很懒,什么都没留下…
展开
-
POJ2752 Seek the Name, Seek the Fame
POJ2752 Seek the Name, Seek the Fame 本题是求一个fail数组就可以了 但是这一题有一个地方和fail数组定义不同:它自身也算一个最长公共前后缀 这一点想了很久。。。。但是最终发现不用改变fail数组,只需要多输出一个字符串它自己的长度就可以了(因为根据题目定义字符串本身必定是它自己的最长公共前后缀) 由于他要升序,把他丢到一个优先队列就行了 代码: #incl...原创 2019-05-09 17:44:19 · 116 阅读 · 0 评论 -
POJ1200 Crazy Search
POJ1200 Crazy Search 本题题目没给数据范围!!!但是它给了输出结果不大于1.6* 107 所以本题就可以用字符串hash,只需要mod1.6*107就可以了 由于最多只有nc种字符,我们直接用nc进制字符串hash就行了 对于字符串hash,我们从直观上讲是每次都要hash=hash+pow(x,p)的 但是在实现的过程中我们可以hash=hash*p+x; 这样少掉一个pow...原创 2019-05-07 17:19:01 · 174 阅读 · 0 评论 -
POJ3461 Oulipo
POJ3461 Oulipo 这一题是裸的kmp 总结几点: 字符串scanf读入不加& fail求的是文本串 代码: #include<iostream> #include<cstring> #include<cstdio> using namespace std; int n,ans; char w[10010],t[1000010]; int...原创 2019-05-07 22:19:21 · 144 阅读 · 0 评论 -
洛谷P4503 [CTSC2014]企鹅QQ
洛谷P4503 [CTSC2014]企鹅QQ 本题在CTSC中算简单的了 但是它仍然是CTSC啊 这题是我的第二道字符串hash,有一定难度 这题的主要难点: 1. 如何判断两个用户名是同一个人 题目中说:若两个账户名称是相似的,当且仅当这两个字符串等长且恰好只有一位不同 而题目中又说:为了简化你的工作,小Q给你的N 个字符串长度均等于L 这一波简直爽歪歪,我们只需要枚举每一个位置,把该字符串减去...原创 2019-05-10 22:23:02 · 283 阅读 · 0 评论 -
洛谷P2375 动物园
洛谷P2375 动物园 这一题我认为巨难 有一个很简单的暴力做法50分: #include<bits/stdc++.h> using namespace std; int n; char s[1000010]; int next[1000010]; int cnt[1000010]; long long ans; int main() { scanf("%d",&n);...原创 2019-05-11 23:22:13 · 297 阅读 · 0 评论 -
AC自动机
文档:AC自动机.note 链接:http://note.youdao.com/noteshare?id=af0b6c526b6c7c311c271770d215a34c原创 2019-07-28 09:39:15 · 164 阅读 · 0 评论