Gold
Gold(黄金级)
以下主题并非该级别的全部内容。
竞赛题目可能包含本指南未涵盖的主题,或属于其他级别下的主题!
数学(Math)- 0/40
整除性(Divisibility):罕见(Rare)
利用一个整数能被另一个整数整除的性质解题。
模运算(Modular Arithmetic):不常见(Not Frequent)
处理除法运算中的余数。
组合数学(Combinatorics):不常见(Not Frequent)
计数方法相关内容。
动态规划(Dynamic Programming)- 0/99
黄金级和白金级竞赛中,通常至少会有一道动态规划题目。
动态规划入门(Introduction to DP):非常常见(Very Frequent)
通过记忆化搜索优化朴素递归解法。
背包动态规划(Knapsack DP):不常见(Not Frequent)
可建模为“用物品填充有限容量容器”的一类问题。
网格路径(Paths on Grids):不常见(Not Frequent)
统计网格中“特殊路径”的数量,以及如何利用网格解决部分字符串问题。
最长递增子序列(Longest Increasing Subsequence):尚未出现(Has Not Appeared)
寻找数组的最长递增子序列并加以运用。
状态压缩动态规划(Bitmask DP):不常见(Not Frequent)
需要遍历子集的动态规划问题。
区间动态规划(Range DP):罕见(Rare)
在原数组的每一个连续子数组上求解的动态规划问题。
数位动态规划(Digit DP):罕见(Rare)
统计某一数值范围内具有特定性质的整数个数。
图论(Graphs)- 0/82
从白银级到白金级竞赛中,通常至少会有一道图论题目。
无权边最短路径(Shortest Paths with Unweighted Edges):不常见(Not Frequent)
介绍如何使用广度优先搜索(BFS)求解无权图中的最短路径。
并查集(Disjoint Set Union):较常见(Somewhat Frequent)
并查集(DSU)数据结构,可用于向图中添加边,并判断图中两个顶点是否连通。
拓扑排序(Topological Sort):罕见(Rare)
对有向无环图(DAG)的顶点进行排序,使每个顶点在其所有后继顶点之前被访问。
非负权边最短路径(Shortest Paths with Non-Negative Edge Weights):不常见(Not Frequent)
贝尔曼-福特算法(Bellman-Ford)、弗洛伊德-沃夏尔算法(Floyd-Warshall)和迪杰斯特拉算法(Dijkstra)。
最小生成树(Minimum Spanning Trees):不常见(Not Frequent)
在连通、无向、带权图中,寻找一个边的子集,使该子集连接所有顶点且总权重最小。
数据结构(Data Structures)- 0/64
有序集合的更多操作(More Operations on Sorted Sets):不常见(Not Frequent)
在有序集合中查找比指定键小或大的下一个元素,以及在有序集合中使用迭代器。
(可选)自定义比较器的有序集合((Optional) Sorted Sets with Custom Comparators):罕见(Rare)
在标准库容器中融入自定义比较器。
栈(Stacks):罕见(Rare)
仅允许在一端进行插入和删除操作的数据结构。
滑动窗口(Sliding Window):不常见(Not Frequent)
维护连续子数组上的数据。
点更新与区间和(Point Update Range Sum):较常见(Somewhat Frequent)
线段树(Segment Tree)、树状数组(Binary Indexed Tree)和有序统计树(C++中)。
树(Trees)- 0/47
欧拉遍历技术(Euler Tour Technique):不常见(Not Frequent)
将树展开为数组,以便轻松查询和更新子树。
树上动态规划 - 入门(DP on Trees - Introduction):不常见(Not Frequent)
将子树作为子问题的动态规划。
树上动态规划 - 全根求解(DP on Trees - Solving For All Roots):罕见(Rare)
涉及换根操作的树上动态规划问题。
其他主题(Additional Topics)- 0/36
很少有题目要求必须掌握这些主题。
哈希(Hashing):罕见(Rare)
快速检验子串或集合是否相等,且出错概率较低的方法。
(可选)哈希映射((Optional) Hashmaps):罕见(Rare)
通过哈希维护独特元素集合的数据结构。
中途相遇法(Meet In The Middle):罕见(Rare)
将搜索空间拆分为两部分求解的问题。
单峰函数优化(Optimizing Unimodal Functions):罕见(Rare)
使用三分法或二分法寻找单峰函数的极值。
结语(Conclusion)- 0/33
恭喜你学到这里!
USACO黄金级额外练习(Additional Practice for USACO Gold)
针对黄金级的最终建议和额外练习题目。