跳至主要內容
字典树Trie

Trie树又称字典树,前缀树。是一种可以高效查询前缀字符串的树,典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。

它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希树高。`做题看到大量字符串或者大量字符就往Trie树或者哈希这边想,因为速度很快.

image.png
image.png

全民制作人ikun大约 10 分钟Algorithm动态规划Algorithm动态规划
概率DP求期望

[NOIP2016 提高组] 换教室

链接:https://www.luogu.com.cn/problem/P1850

题目描述

对于刚上大学的牛牛来说,他面临的第一个问题是如何根据实际情况申请合适的课程。

在可以选择的课程中,有 2n2n 节课程安排在 nn 个时间段上。在第 ii1in1 \leq i \leq n)个时间段上,两节内容相同的课程同时在不同的地点进行,其中,牛牛预先被安排在教室 cic_i 上课,而另一节课程在教室 did_i 进行。


全民制作人ikun大约 9 分钟Algorithm动态规划Algorithm动态规划
概率DP

Bag of mice

题面翻译

https://www.luogu.com.cn/problem/CF148D

袋子里有ww 只白鼠和bb 只黑鼠 ,A和B轮流从袋子里抓,谁先抓到白色谁就赢。A每次随机抓一只,B每次随机抓完一只之后会有另一只随机老鼠跑出来。如果两个人都没有抓到白色则B赢。A先抓,问A赢的概率。


全民制作人ikun大约 9 分钟Algorithm动态规划Algorithm动态规划
树形DP

树的重心

题目

链接:https://www.acwing.com/problem/content/848/

给定一颗树,树中包含 $ n $ 个结点(编号 $ 1 \sim n $)和 $ n-1 $ 条无向边。

请你找到树的重心,并输出将重心删除后,剩余各个连通块中点数的最大值。

重心定义:重心是指树中的一个结点,如果将这个点删除后,剩余各个连通块中点数的最大值最小,那么这个节点被称为树的重心。


全民制作人ikun大约 6 分钟Algorithm动态规划Algorithm动态规划
区间DP

石子合并(弱化版)

题目描述

https://www.luogu.com.cn/problem/P1775

设有 N(N300)N(N \le 300) 堆石子排成一排,其编号为 1,2,3,,N1,2,3,\cdots,N。每堆石子有一定的质量 mi(mi1000)m_i(m_i \le 1000)。现在要将这 NN 堆石子合并成为一堆。每次只能合并相邻的两堆,合并的代价为这两堆石子的质量之和,合并后与这两堆石子相邻的石子将和新堆相邻。合并时由于选择的顺序不同,合并的总代价也不相同。试找出一种合理的方法,使总的代价最小,并输出最小代价。


全民制作人ikun大约 6 分钟Algorithm动态规划Algorithm动态规划
状态压缩DP

[SCOI2005] 互不侵犯

题目描述

https://www.luogu.com.cn/problem/P1896

在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案。国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子。

注:数据有加强(2018/4/25)

输入格式


全民制作人ikun大约 11 分钟Algorithm动态规划Algorithm动态规划
字符串哈希

【模板】字符串哈希

题目描述

https://www.luogu.com.cn/problem/P3370

如题,给定 NN 个字符串(第 ii 个字符串长度为 MiM_i,字符串内包含数字、大小写字母,大小写敏感),请求出 NN 个字符串中共有多少个不同的字符串。


全民制作人ikun大约 3 分钟Algorithm动态规划字符串哈希Algorithm动态规划字符串哈希
2