随笔分类 -  ACM_SUMMER_TRAINING

摘要:写了几道题,对线段树的概念有了一定的认识,这里总结下我写的习惯,方便以后完善及复习。 线段树所用的函数: pushup():向上更新父节点 build(): 与普通建树方式相同,最后要pushup()(向上更新(父节点的值) update():判断当前区间与给定区间的关系;若是点:找到点更新即可,若 阅读全文
posted @ 2018-08-22 22:45 seaupnice 阅读(389) 评论(2) 推荐(0) 编辑
摘要:现在对AC自动机的理解还十分浅薄: AC自动机相比Trie多了失配边,结点到结点间的状态转移,结点到根的状态转移。 这里fail的定义是:使当前字符失配时跳转到另一段从root开始每一个字符都与当前已匹配字符段某一个后缀完全相同且长度最大的位置继续匹配。 A - Keywords Search 题意 阅读全文
posted @ 2018-08-20 00:19 seaupnice 阅读(152) 评论(0) 推荐(0) 编辑
摘要:感觉不把这个Trie理解一下,AC自动机的代码看起来有点费劲。 这里代码的学习仿照训练指南209页。 这里如果只是查询单词,感觉用map更好,但是如果查前缀,还是用Trie。 Trie查询前缀字符串是否存在。 #include <bits/stdc++.h> using namespace std; 阅读全文
posted @ 2018-08-19 23:48 seaupnice 阅读(227) 评论(0) 推荐(0) 编辑
摘要:这里是学习韦神的6道入门树形dp并进行整理整理。 这里大部分题目都是参考的韦神的思想。 A - Anniversary party 题意: 一个树,每个点有一个“快乐”值,父子结点不能同时快乐,问这个结构的最大快乐值。 Thinking: 思考如何写出树规方程,即思考根与子节点的关系。 dp[i][ 阅读全文
posted @ 2018-08-14 01:15 seaupnice 阅读(15253) 评论(0) 推荐(2) 编辑
摘要:并查集 A-How Many Answers Are Wrong 题意:已知区间[1,n],给出m组数据,即[l,r]区间内数据之和为s,求错误数据的数量。 思路: 并查集中路径压缩的过程中如何更新关系域是关键 根据数据定义一些合理的关系(如:集合中的根与集合中的元素的关系),才能对集合进行合并。这 阅读全文
posted @ 2018-08-07 23:56 seaupnice 阅读(116) 评论(0) 推荐(0) 编辑
摘要:今天讲了博弈论的相关知识,感觉很注重思维和模型积累的是SG函数,应该是需要多做题才可以熟练掌握。 聚聚帮忙列出了几种应该掌握的博弈模型: 巴什博弈 威佐夫博弈 斐波那契博弈 尼姆博弈 阶梯博弈 Nim博弈的第二种形式 树上博弈 下来总结今日学习的题目: A - Playing With Stones 阅读全文
posted @ 2018-08-03 12:49 seaupnice 阅读(148) 评论(0) 推荐(0) 编辑
摘要:开个博客,一来作为总结,二来提醒自己还有很多内容需要不断完善。 A - 整数分解为2的幂(51Nod 1383) 课上学习了聚聚的代码,以及划分子问题的思想。 考虑数 n = 1+2+4+……,即1和其他2次幂,其他2次幂提取出2,又变为子问题求解。 #include <cstdio> const 阅读全文
posted @ 2018-08-02 00:18 seaupnice 阅读(145) 评论(0) 推荐(0) 编辑

more_horiz
keyboard_arrow_up dark_mode palette
选择主题
点击右上角即可分享
微信分享提示