近期题目相关总结.
模拟1:
1.对于矩阵取最大最小可以往悬线法(单调栈)上面靠,思考并排除不合法者.
2.Floyd一般应用于密集图,同时注意其dp性质,自带着用任意有顺序的k个点取更新最短路的意义.
3.欧拉函数值的通项公式:
\[\varphi(x)=x*\prod_{i=1}^k(\frac{p-1}{p})(k为x质因数数量)
\]
模拟2:
1.摩尔投票的应用.
2.扫描线.
3.线段树优化建边,通过开两个线段树实现区间距离更新,从上往下,大区间->小区间,从下往上->小区间到大区间.
4.预设性dp,我不太理解它在广义上的理解,目前只能理解它是描述一个模糊的状态,比如区间中有几个空位可以填入之类的,
这个空位就可以相当于预留下来一些位置给新加入的数,这种新加入的数顺序需要易于答案的更新与状态的转移.
模拟3:
1.势能线段树,对于一些必须暴力处理区间信息,且若干次操作之后区间不再变动的那种,用一些标记标出,可以很好的解决问题.
2.树分治(快去学).
模拟4:
1.想问题多想几个维度,从上向下或从下往上,让每个问题分割成小问题或者归到其余部分,
对于树形结构,更要单拿出一个节点,去看该节点与父亲以及孩子之间的关系,
在思路正确但时间复杂度不对的前提下对解决方式进行转换.
2.对于模数问题,同余的性质会经常被利用,不管是dp还是数学,都要去对同余的各个点进行分析.
3.构造题目,想方法以调和的方式处理序列,貌似很多都是这样构造的,有两项限制,就在一项满足的前提下构造出序列再更改.
加赛:
1.可反悔贪心.
2.搜?
https://www.cnblogs.com/shining-like-stars