自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zyz_3_14159的博客

From 2016-9-20 厚积薄发

  • 博客(7)
  • 收藏
  • 关注

原创 HDU-2896-AC自动机

题目大意:很裸的AC自动机,就是要按照模式串的先后顺序输出; 题目解析:只需要在tire树上每个节点加上一个end,表示当前结束的是哪一个模式串,之后query的时候记录下来,最后扫一遍O(n); AC代码: #include #include #include #include #include using namespace std; const int N = 510; co

2017-09-19 22:10:32 308

原创 HDU-2222-AC自动机

题目大意:就是给定若干个模式串,求它们在匹配串中出现的个数; 题目解析:AC自动机的模板题,用来保存模板; AC代码: #include #include #include struct Node { int cnt;//是否为该单词的最后一个结点 Node *fail;//失败指针 Node *next[26];//Trie中每个结点的各个节点 }*queue[50000

2017-09-19 16:31:12 343

原创 POJ-3261-后缀数组

题目大意:求可重叠的出现k次最长重复子串的长度; 题目解析:首先二分答案,问题转化成了有没有出现k次以上并且长度大于mid的子串,这样贪心O(N)在height数组里面扫一遍就好了; AC代码: #include #include #include using namespace std; const int MAXN = 200005; char ch[MAXN], All[M

2017-09-12 16:00:34 185

原创 POJ-2774-后缀数组

题目大意:给定两个字符串,求他们的最长连续子串; 题目解析:先用分隔符把两个字符串拼接在一起,然后求一下后缀数组,枚举height,如果发现i,i-1分别在分隔符的左边和右边,就更新最大值; AC代码: #include #include #include using namespace std; const int MAXN = 200005; char ch[MAXN], A

2017-09-11 16:01:02 202

原创 BZOJ-3944-杜教筛

题目大意: 题目解析: 杜教筛科普: 前面那项需要快速求解,最好O(1),后面那项可以dfs求解; AC代码: #include #include #include #include #include #include using namespace std; #define N 5000000 #define LL long long int T,n;

2017-09-03 16:06:59 370

原创 HDU-1695-莫比乌斯

题目大意:求在a 题目解析:跟上题一样,只不过要开ll,而且需要减去重复的,只要减去cal(b,b)/2即可; AC代码: #include #include using namespace std; typedef long long ll; #define MAXN 100010 int a,b,c,d,k,p[MAXN+10],pcnt,n; ll ans,sum[MAXN+10],m

2017-09-01 23:08:28 249

原创 BZOJ-2301-莫比乌斯

莫比乌斯反演; 形式一: F(n)=∑d|nf(d)=>f(n)=∑d|nμ(d)F(nd) 形式二: F(n)=∑n|df(d)=>f(n)=∑n|dμ(dn)F(d) 题目大意:求在a 题目解析:满足gcd(x,y)是k的(x,y)的对数也等价于1 令f(i)表示满足gcd(x,y)=i时(x,y)的对数,F(i)表示满足i|gcd(x,y)的(x,y)的对数, F(i

2017-09-01 22:37:27 314

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除