会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
fxq1304
博客园
首页
新随笔
联系
管理
订阅
上一页
1
···
3
4
5
6
7
8
9
10
11
12
下一页
2020年8月10日
hdu4118
摘要: hdu4118 Holiday's Accommodation 传送门 题意 一棵$n$个节点的带有边权的树,每个节点都有一个人,将每个人都换到与当前节点不同的节点,求所有人走过的路径总和的最大值 题解 对于每条边,使得所有人走得最远的方式就是让两边的人互换,为了保证每个人都有位置,交换人数为左右两
阅读全文
posted @ 2020-08-10 17:37 fxq1304
阅读(58)
评论(0)
推荐(0)
2020年8月9日
Trie
摘要: Trie是指一个字符串集合对应的有根树,树的每条边对应一个字符,根节点表示空串,其他每个节点表示从根到这个节点的路径组成的字符串,在每个属于集合中的字符串的节点处打上标记 Trie是可以高效维护字符串集合,以空间换时间的数据结构,Trie中插入字符串和查询字符串的效率比较高,时间复杂度都是$O(n)
阅读全文
posted @ 2020-08-09 16:12 fxq1304
阅读(80)
评论(0)
推荐(0)
2020年8月8日
字符串哈希
摘要: 字符串哈希用来解决字符串匹配问题。设文本串的长度为$n$,模式串的长度为$m$,通过滚动哈希优化可以在$O(n+m)$的时间复杂度内完成匹配 选取两个互素常数$b$和$m$,$b$可以选择$131,13331$等,可以降低哈希冲突的概率,$m$通常选择$2^{64}$,通过自然溢出省去取模运算 哈希
阅读全文
posted @ 2020-08-08 17:47 fxq1304
阅读(95)
评论(0)
推荐(0)
2020年8月7日
平面分治 平面上的最近点对问题
摘要: 平面上有$n$个点,计算距离最近的两个点之间的距离 将所有点按照横坐标$x_0$分成左右两半,那么距离最近的点对一定是下面两种情况中的最小值: 1.两点都属于左半边或者右半边 2.两点一个属于左半边,一个属于右半边 第一种情况可以通过递归来处理,由于计算的是最小值,假设第一情况得到的最小值为$d$,
阅读全文
posted @ 2020-08-07 17:13 fxq1304
阅读(235)
评论(0)
推荐(0)
2020年8月6日
后缀数组模板
摘要: 后缀数组是将某个字符串的所有后缀按照字典序排序后得到的数组,数组中存储的是字符串的起始下标。包括空串,所以如果字符串的长度为$n$,则后缀数组中的元素个数为$n+1$ 后缀数组的计算有基于倍增的时间复杂度为$O(n\log ^2n)$的算法,利用长度为$k$的排序结果对长度为$2k$的字符串排序 设
阅读全文
posted @ 2020-08-06 18:30 fxq1304
阅读(35)
评论(0)
推荐(0)
2020年8月4日
数独
摘要: 求解数独问题的基本方法是在$dfs$的过程中剪枝,下面这几种方法的剪枝强度递增 朴素方法 通过数组记录每行、每列、每个九宫格中已经填过的数字,从左上角的空格开始$dfs$,填入所在行、列和九宫格中都没有出现过的数字 相关题目:hdu1426 Sudoku Killer #include<iostre
阅读全文
posted @ 2020-08-04 16:59 fxq1304
阅读(44)
评论(0)
推荐(0)
2020年8月3日
hdu2236
摘要: hdu2236 无题II 传送门 在一个$n*n$的矩阵$a$中,选择$n$个不同行、不同列的元素,使得其中最大值与最小值的差值最小 $1\leq n\leq 100$,$0\leq a_ \leq 100$ 由于每一行、每一列只能选择一个元素,可以将行号和列号分成两个集合,建立二分图。 二分答案,
阅读全文
posted @ 2020-08-03 22:04 fxq1304
阅读(73)
评论(0)
推荐(0)
单调栈与单调队列
摘要: 单调栈 单调栈就是栈内元素保持单调性的栈 遍历整个序列,每一次从栈顶弹出会破坏单调性的元素,最后将当前元素加入栈顶 由于每个元素最多入栈一次,出栈一次,所以可以在$O(n)$的时间复杂度内处理数据 相关题目:hdu1506 Largest Rectangle in a Histogram #incl
阅读全文
posted @ 2020-08-03 16:41 fxq1304
阅读(81)
评论(0)
推荐(0)
树上修改边权,动态维护两点之间的距离(lca+树状数组)
摘要: 由于无论边权怎么修改,树上任意两点之间的$lca$是不变的,所以节点$u,v$之间的距离总是可以表示成两个节点分别到根节点的距离之和减去2倍的$lca(u,v)$到根节点的距离 问题就是边权修改时,如何动态维护所有节点到根节点的距离 如果图为一条链,那么只要使用树状数组就可以实现单点修改,区间查询
阅读全文
posted @ 2020-08-03 00:09 fxq1304
阅读(335)
评论(0)
推荐(0)
2020年8月1日
2-SAT
摘要: 2-SAT 给定一个布尔方程,判断是否存在一组布尔变量的真值指派使得整个方程为真的问题,称为布尔方程的可满足性问题(SAT) 合取范式:\((a\bigvee b\bigvee \cdots)\bigwedge (c\bigvee d\bigvee \cdots)\bigwedge \cdots\)
阅读全文
posted @ 2020-08-01 15:15 fxq1304
阅读(96)
评论(0)
推荐(0)
上一页
1
···
3
4
5
6
7
8
9
10
11
12
下一页
公告