Write in front
- With the advent of the April, more and more close to the provincial election.
- From Noip to the present, learned a lot of things, some learn more deeply, some just knows
- Starting tomorrow, the algorithm review plan for the provincial selection is carried out. Save the selection before completing.
- The focus is on the understanding and application of algorithms, but also on the formation of template habits
Program Content
1. Data Structure
- I have always felt that the data structure of the study can be, but listed to find that there is not much.
- Less is less, the provincial election is enough ...
- Segment Tree
- Tree-like array
- and check Set
- Hash table
- Stl
- Treap
- Splay
- Tree Chain Split
- Chairman Tree (can be ignored)
- String (KMP, suffix array)
2. graph theory
- Mastering the classic algorithm and will apply is the focus
- Often combined with dynamic planning
- Shortest circuit (floyed, heap optimization Dijkstra, SPFA)
- Minimum spanning tree (Prim, Kruskal), and spanning tree related
- Strongly connected components (Tarjan)
- Topological sorting
- Euler's path and Hamilton ring
- Bridges and critical paths
- Two-part diagram
- Others (2-sat, floyed Circle)
3. Network streaming
- Algorithm is the basis, modeling is the key
- Take a look at the original topic, summarize the modeling method
- Maximum flow, min cut (dinic)
- Cost Flow (SPFA)
- Upper and lower bounds network flow
- Figuring out the complexity of time ...
4. Mathematics
- There are a lot of things that are basically on the training guide
- I am not good at maths, so I will have a few basic algorithms and then test violence.
- Inductive method
- gcd
- The Sieve method to calculate prime number
- Common Euler function and sieve method to find Euler function
- Inverse element (Euler function, extended Euclidean), preprocessing inverse
- Principle of tolerance and repulsion
- Solving linear modal equations
- Discrete logarithm (BSGS)
- Chinese remainder theorem
- Combination number, Lucas theorem
- Möbius function
- Matrix multiplication (Loop matrix)
5. Search
- Maybe it'll be a search.
- However, I do not search for training ...
- Dfs
- BFs
- A *
- ida*
- Heuristic Dfs
- Two-Way Dfs
- Two-way BFS
- Memory Search
6. Dynamic Planning
- It's better to come up with a dynamic planning approach to
- Is it possible to use dynamic programming to see if there are no effects and overlapping sub-problems
- But sometimes it seems that the problem of aftereffect can be translated into no aftereffect
- > What's optimized is looking at it.
- Basically, it's possible to get a little bit of it without optimization
- Checkerboard-Type dynamic programming
- Sequence-based dynamic programming
- Backpack-type dynamic programming
- Interval Type dynamic programming
- The dynamic programming of partition type
- Path-based dynamic planning
- Tree-type dynamic programming
- Dynamic programming of State compression
- Dynamic programming based on connectivity
- Slope optimization, monotonic optimization, convex hull (none)
7. Division and Treatment
- Very efficient, but generally unexpected, thinking more strange
- If meeting offline requirements are often BT
- Reverse order to
- Two points, three points.
- CDQ Divided treatment
- Overall two points
8. Greed
- I haven't done a greedy question since Noip.
- But thought is important.
- The quasi-matrix is very divine (i didn't read it)
9. Group theory
- Burnside lemma
- Polya theorem
10. Discretization
- Look for a general method, should be able to deal with some problems
11. Calculating Geometry
- I found out I forgot to calculate geometry.
- Be careful not to go to rote, the code on the training guide is good but it has to be a different question, there may be a simpler way
- Sometimes it's not a matter of calculating geometry, but it can be translated into computational geometry, such as semi-planar intersection.
- Basic knowledge (difference product, dot product)
- Convex bag
- Polygon
- Rotating Jam
- Semi-planar Cross
12. Violence Skills (mess)
- The same is violence, some people 20 points can be 40 points.
- Violence also has the skill, and does not necessarily learn the algorithm to be more violent writes is good, often the thought active person violence writes well (Orz WXJLZBCD)
- A bold guess is a good idea.
Algorithm Review Program