CST2018 3-1-1 Sum (15%)
简单的线段树,单点修改,区间求和。
很简单。
CST2018 3-1-2 Max (20%)
高级的线段树。
维护区间最大和,区间和,左边最大和,右边最大和。
单点修改的时候一路吧区间都改了就好了。
求子段最大值也就判断一下左右就好了。
略微复杂。
CST2018 3-2 Not Found (20%)
内存有点小,在考虑按层建立trie树?
不太会。
CST2018 3-3 Hacker (20%)
$18^5$其实并不大,直接预处理hash一下就好了。
冲突的话直接记录输出duplicate。
比较简单。
CST2018 3-4 kth (20%)
可以先通过3n次比较进行排序。
一个数组的话直接二分就好了。
要是两个数组可以丢堆里面。
三个不会【摊手
CST2018 3-5 Prefix (20%)
一道简单的KMP,就是考虑每个节点为结尾多出来多少重复的。
比较简单。
CST2018 3-6 Match (20%)
Treap的应用:
插入:基本操作。
删除:基本操作。
翻转:基本操作。
比较大小:用hash比较。
所以要记录两个值:以某个节点为根的顺序的hash和逆序的hash。
写起来比较麻烦。
CST2018 3-7 History (15%)
强制在线。
简单hash。
CST2018 3-8 Shortest (15%)
堆优化Dijkstra。
其实我觉得spfa加SLF还是能过。。。
原文地址:https://www.cnblogs.com/rausen/p/10166643.html
时间: 2024-10-13 22:01:48