To be or not to be...

算法竞赛的种子,你是要让它生存,还是毁灭?

毁灭很简单,有无数种方法。火烧 || 践踏 || 冷落 || 曝晒...

可是要让它生存下去,只有一种方法,那就是灌溉 && 施肥...

就像《火星救援》中的Mark种土豆,这一切都需要你的汗水,想象力,甚至一定程度的牺牲。

Mark开动想象力,以燃烧氢气的方式制水;实验失败被炸;即使最后舱门破裂一切化为乌有,这也不算作毁灭。

毁灭,是悔。

就像今天和lxt聊的那样,曾在年级中名次令人望不可及,可是竞赛让她不得不接受文化课上的欠缺,这就是牺牲。

生存,是疼。痛并快乐。

我愿做一位园丁,既不能拔苗助长,也不能疏于打理。

lxt帮我筛选的知识点:

数据结构:

必须掌握:

单调栈

单调队列

队列

链表

哈希表

最好掌握:

线段树

树状数组

图论:

必须掌握:

欧拉图

拓扑排序

树:dfs序,LCA,最小生成树(包括Kruskal,Prim)

搜索(包括BFS,DFS,记忆化)

最短路(包括 SPFA,Floyd,Bellman-ford队列优化)

最好掌握:

网络:二分图(包括最大匹配-匈牙利算法,最大独立集,最大点权覆盖集,最小路径覆盖)

数学相关:

必须掌握:

容斥原理及Ramsey定理

线性素数表

高斯消元

乘法逆元

gcd及扩展gcd

中国剩余定理

快速幂

欧拉函数

概率与期望(初级部分)

排列组合



字符串:

最好掌握:

KMP

Trie

入门:

必须掌握:

模拟

贪心

暴力

高精度

排序

规划:

必须掌握:

动态规划:树型DP,区间DP,数位DP,概率DP,背包(包括01背包,完全背包,多重背包),简单模型(包括LCS,LIS,LCIS)

技巧与思想:

必须掌握:

二分

位运算

离散化

分块

位增(RMQ,LCA)

数列差分化及前缀和

最好掌握:

树上莫队-莫队算法

原文地址:https://www.cnblogs.com/peccavi/p/5014869.html