Trie树又称字典树,前缀树。是一种可以高效查询前缀字符串的树,典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。
它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希树高。`做题看到大量字符串或者大量字符就往Trie树或者哈希这边想,因为速度很快.
[NOIP2016 提高组] 换教室
链接:https://www.luogu.com.cn/problem/P1850
题目描述
对于刚上大学的牛牛来说,他面临的第一个问题是如何根据实际情况申请合适的课程。
在可以选择的课程中,有 节课程安排在 个时间段上。在第 ()个时间段上,两节内容相同的课程同时在不同的地点进行,其中,牛牛预先被安排在教室 上课,而另一节课程在教室 进行。
Bag of mice
题面翻译
https://www.luogu.com.cn/problem/CF148D
袋子里有 只白鼠和 只黑鼠 ,A和B轮流从袋子里抓,谁先抓到白色谁就赢。A每次随机抓一只,B每次随机抓完一只之后会有另一只随机老鼠跑出来。如果两个人都没有抓到白色则B赢。A先抓,问A赢的概率。
数字游戏
题目
链接:https://www.acwing.com/problem/content/1084/
科协里最近很流行数字游戏。
某人命名了一种不降数,这种数字必须满足从左到右各位数字呈非下降关系,如 $ 123 446 $。
树的重心
题目
链接:https://www.acwing.com/problem/content/848/
给定一颗树,树中包含 $ n $ 个结点(编号 $ 1 \sim n $)和 $ n-1 $ 条无向边。
请你找到树的重心,并输出将重心删除后,剩余各个连通块中点数的最大值。
重心定义:重心是指树中的一个结点,如果将这个点删除后,剩余各个连通块中点数的最大值最小,那么这个节点被称为树的重心。
石子合并(弱化版)
题目描述
https://www.luogu.com.cn/problem/P1775
设有 堆石子排成一排,其编号为 。每堆石子有一定的质量 。现在要将这 堆石子合并成为一堆。每次只能合并相邻的两堆,合并的代价为这两堆石子的质量之和,合并后与这两堆石子相邻的石子将和新堆相邻。合并时由于选择的顺序不同,合并的总代价也不相同。试找出一种合理的方法,使总的代价最小,并输出最小代价。
[SCOI2005] 互不侵犯
题目描述
https://www.luogu.com.cn/problem/P1896
在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案。国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子。
注:数据有加强(2018/4/25)
输入格式
大盗阿福
题目
链接:https://www.acwing.com/problem/content/1051/
阿福是一名经验丰富的大盗。趁着月黑风高,阿福打算今晚洗劫一条街上的店铺。
这条街上一共有 家店铺,每家店中都有一些现金。
【模板】字符串哈希
题目描述
https://www.luogu.com.cn/problem/P3370
如题,给定 个字符串(第 个字符串长度为 ,字符串内包含数字、大小写字母,大小写敏感),请求出 个字符串中共有多少个不同的字符串。