clean up syllabus +
This commit is contained in:
parent
2eb2e734e1
commit
e698cc6e94
1 changed files with 118 additions and 90 deletions
208
Syllabus.md
208
Syllabus.md
|
@ -1,112 +1,140 @@
|
||||||
# Stuff
|
# Stuff
|
||||||
|
|
||||||
[https://github.com/bqi343/USACO/blob/master/Contests/USACO%20Links/USACO%20Topics.md](https://github.com/bqi343/USACO/blob/master/Contests/USACO%20Links/USACO%20Topics.md)
|
- [USACO -> CPH Topics](https://github.com/bqi343/USACO/blob/master/Contests/USACO%20Links/USACO%20Topics.md)
|
||||||
|
- [Riya's website](https://www.vplanetcoding.com/courses)
|
||||||
[https://www.vplanetcoding.com/courses](https://www.vplanetcoding.com/courses)
|
- [IOI Syllabus](https://people.ksp.sk/~misof/ioi-syllabus/ioi-syllabus.pdf)
|
||||||
|
- [Darren's book](https://www.overleaf.com/project/5e73f65cde1d010001224d8a)
|
||||||
[https://people.ksp.sk/~misof/ioi-syllabus/ioi-syllabus.pdf](https://people.ksp.sk/~misof/ioi-syllabus/ioi-syllabus.pdf)
|
- [Division-Specific Categorization](https://github.com/bqi343/USACO/blob/master/Contests/USACO%20Links/Division-Specific/Silver.md)
|
||||||
|
- [Silver Categorization](https://docs.google.com/document/d/1ba2jr2PFrtxHuGfvdjYVKX-8VzkQAdhpiMLlpXxiAOM/edit)
|
||||||
[https://www.overleaf.com/project/5e73f65cde1d010001224d8a](https://www.overleaf.com/project/5e73f65cde1d010001224d8a)
|
|
||||||
|
|
||||||
[https://github.com/bqi343/USACO/blob/master/Contests/USACO%20Links/Division-Specific/Silver.md](https://github.com/bqi343/USACO/blob/master/Contests/USACO%20Links/Division-Specific/Silver.md)
|
|
||||||
|
|
||||||
Italics = mostly appears in higher divisions but still good to learn
|
Italics = mostly appears in higher divisions but still good to learn
|
||||||
|
|
||||||
# Bronze
|
# Bronze
|
||||||
|
|
||||||
- Assumed Prerequisites
|
- Assumed Prerequisites
|
||||||
- for loops, ifs, etc…
|
- for loops, ifs, arrays, arraylists, etc…
|
||||||
- first half of AP Computer Science A
|
- first half of AP Computer Science A
|
||||||
- What is competitive programming?
|
- What is competitive programming?
|
||||||
- how to practice, debug
|
- how to practice, debug
|
||||||
- good practices for contests
|
- good practices for contests
|
||||||
- contest format
|
- contest format
|
||||||
- Introduction to contests
|
- Introduction to contests
|
||||||
- format
|
- format
|
||||||
- plenty of examples involving files I/O
|
- plenty of examples involving file I/O
|
||||||
- submitting, verdicts
|
- submitting, verdicts
|
||||||
- VERY easy problems
|
- VERY easy problems
|
||||||
- ex. [Fence Painting]([http://usaco.org/index.php?page=viewproblem2&cpid=567](http://usaco.org/index.php?page=viewproblem2&cpid=567))
|
- ex. [Fence Painting](http://usaco.org/index.php?page=viewproblem2&cpid=567)
|
||||||
- At this level... be explicit about how to implement things (say "arrays" or "for-loops" probably)
|
- At this level... be explicit about how to implement things (say "arrays" or "for-loops" probably)
|
||||||
- Brute force
|
- Brute force
|
||||||
- ex. [Tracing](http://usaco.org/index.php?page=viewproblem2&cpid=1037)
|
- ex. [Tracing](http://usaco.org/index.php?page=viewproblem2&cpid=1037)
|
||||||
- Greedy
|
- Greedy?
|
||||||
- ex. [Mad Scientist](http://usaco.org/index.php?page=viewproblem2&cpid=1012)
|
- CPH 6?
|
||||||
|
- ex. [Mad Scientist](http://usaco.org/index.php?page=viewproblem2&cpid=1012)
|
||||||
|
- usually considered to be silver?
|
||||||
- Bitwise operations?
|
- Bitwise operations?
|
||||||
- Iterating through subsets and permutations
|
- Brute Force
|
||||||
- next_permutation/Generating permutations recursively (for Java/python)
|
- iterating through permutations
|
||||||
|
- `next_permutation`
|
||||||
|
- generating recursively
|
||||||
|
- subsets with bitwise operations??
|
||||||
|
- CPH 5.1, 5.2, 5.3
|
||||||
- STL / java.util. (know that they exist)
|
- STL / java.util. (know that they exist)
|
||||||
- Vector / ArrayList
|
- (review?) Vector / ArrayList
|
||||||
- std::sort / Collections.sort
|
- (review?) std::sort / Collections.sort
|
||||||
- std::map / TreeMap/HashMap
|
- std::map / TreeMap/HashMap
|
||||||
|
|
||||||
# Silver
|
# Silver
|
||||||
|
|
||||||
- Sorting
|
- Containers from C++ standard template library (STL)
|
||||||
- ex. Coord Compress
|
- CPH 4
|
||||||
- Binary Search (BinSearch)
|
- C++ Pairs
|
||||||
- Two Pointers (2P)
|
- Linear
|
||||||
- Prefix Sums (Psum)
|
- Linked List
|
||||||
- aka Cumulative, Partial
|
- Stacks
|
||||||
- 2D
|
- Deques
|
||||||
- Containers from C++ standard template library (STL)
|
- Log
|
||||||
- (also know pairs in C++)
|
- Priority Queues
|
||||||
- PQ = priority queue
|
- BST / TreeSet / TreeMap (Python doesn’t have log n map)
|
||||||
- Data Structures and their Methods(STL)
|
- Sets/Maps
|
||||||
- BST/TreeSet / TreeMap (Python doesn’t have ordered map)
|
- Multiset (F FOR JAVA) (just teach a workaround or smthn ig) TreeMap<value,numoccrances> (erase by value pitfall)
|
||||||
- Linked List
|
- Custom comparator (prerequisite for basically all silver topics in Java)
|
||||||
- Priority Queues
|
- HashSets / HashMaps
|
||||||
- Stacks
|
- Sorting, Binary Search (BinSearch)
|
||||||
- Deques
|
- CPH 3
|
||||||
- Sets/Maps
|
- coord compress
|
||||||
- HashSets/HashMaps
|
- ex. [Counting Haybales](http://usaco.org/index.php?page=viewproblem2&cpid=666)
|
||||||
- Multiset (F FOR JAVA) (just teach a workaround or smthn ig) TreeMap<value,numoccrances> (erase by value pitfall**)
|
- Two Pointers (2P)
|
||||||
- Custom comparator (prerequisite for basically all silver topics in Java)
|
- CPH 8.1
|
||||||
- Graphs
|
- ex. [diamond](http://usaco.org/index.php?page=viewproblem2&cpid=643)
|
||||||
- Terminology
|
- Prefix Sums (Psum)
|
||||||
- ex. Bipartite graphs
|
- CPH 9.1
|
||||||
- FF: Flood Fill (finding the number of connected components in a graph)
|
- aka Cumulative, Partial
|
||||||
- frequently on grid
|
- ex. [Breed Counting](http://www.usaco.org/index.php?page=viewproblem2&cpid=572)
|
||||||
- Depth First Search (DFS)
|
- 2D
|
||||||
- *Breadth First Search (BFS)*
|
- Graphs
|
||||||
- *Disjoint Set Union (DSU)*
|
- [CSAcademy Lessons](https://csacademy.com/lessons/)
|
||||||
|
- CPH 11, 12
|
||||||
|
- Terminology
|
||||||
|
- ex. bipartite graphs??
|
||||||
|
- Flood Fill (FF)
|
||||||
|
- finding the number of connected components in a graph
|
||||||
|
- frequently on grid
|
||||||
|
- ex. [lightson](http://www.usaco.org/index.php?page=viewproblem2&cpid=570)
|
||||||
|
- Depth First Search (DFS)
|
||||||
|
- *Breadth First Search (BFS)*
|
||||||
|
- *Disjoint Set Union (DSU)*
|
||||||
- Permutations / Cycle Detection??
|
- Permutations / Cycle Detection??
|
||||||
|
- ex. [swap](http://www.usaco.org/index.php?page=viewproblem2&cpid=1014)
|
||||||
|
|
||||||
# Gold
|
# Gold
|
||||||
|
|
||||||
|
- Amortized Analysis?
|
||||||
|
- CPH 8.2, 8.3
|
||||||
- Dynamic Programming (DP)
|
- Dynamic Programming (DP)
|
||||||
- Tree
|
- CPH 7
|
||||||
- Bitmasks
|
- Knapsack
|
||||||
- Knapsack
|
- LIS
|
||||||
- Range DP??
|
- on tree?
|
||||||
|
- Bitmasks??
|
||||||
|
- Range DP???
|
||||||
- Graphs
|
- Graphs
|
||||||
- Shortest Path (SP)
|
- Shortest Path (SP)
|
||||||
- Dijkstra
|
- Dijkstra
|
||||||
- Bellman-Ford (SPFA?)
|
- ex. [pump](http://www.usaco.org/index.php?page=viewproblem2&cpid=969)
|
||||||
- Floyd-Warshall (Separate or together?)
|
- Bellman-Ford
|
||||||
- Minimum Spanning Tree (MST)
|
- Floyd-Warshall
|
||||||
- Prim
|
- SPFA??
|
||||||
- Kruskal
|
- CPH 13
|
||||||
- Topological Sort (TopoSort)
|
- *Lowest Common Ancestor (LCA)*
|
||||||
- *Lowest Common Ancestor (LCA)*
|
- CPH 14, 18?
|
||||||
- hasn’t been *required* aside from [cowland](http://www.usaco.org/index.php?page=viewproblem2&cpid=921)
|
- hasn’t been *required* aside from [cowland](http://www.usaco.org/index.php?page=viewproblem2&cpid=921) but we probably won't see a repeat of this
|
||||||
- well, [milk visits](http://www.usaco.org/index.php?page=viewproblem2&cpid=970) mentions it (but no binary jumping required…)
|
- [Milk Visits](http://www.usaco.org/index.php?page=viewproblem2&cpid=970) also mentions it (but no binary jumping required…)
|
||||||
|
- Minimum Spanning Tree (MST)
|
||||||
|
- CPH 15
|
||||||
|
- ex. [fencedin](http://www.usaco.org/index.php?page=viewproblem2&cpid=623)
|
||||||
|
- Prim
|
||||||
|
- Kruskal
|
||||||
|
- Topological Sort (TopoSort)
|
||||||
|
- CPH 16
|
||||||
|
- ex. [timeline](http://www.usaco.org/index.php?page=viewproblem2&cpid=1017)
|
||||||
- 1D Range Queries (1DRQ)
|
- 1D Range Queries (1DRQ)
|
||||||
- Mostly sum queries
|
- CPH 9
|
||||||
- Fenwick / Binary Indexed Tree (BIT)
|
- mostly sum queries
|
||||||
- *Segment Tree*
|
- Fenwick / Binary Indexed Tree (BIT)
|
||||||
- Math
|
- *Segment Tree*
|
||||||
- Combinatorics
|
- Number Theory
|
||||||
- Principle of Inclusion and Exclusion (PIE)
|
- Modular Arithmetic
|
||||||
- Number Theory
|
- Fast Exponentiation
|
||||||
- Modular Arithmetic
|
- ex. [Cow Poetry](http://usaco.org/index.php?page=viewproblem2&cpid=897)
|
||||||
- Fast Exponentiation (Cow Poetry)
|
- Other
|
||||||
- Geometry
|
- Bitset??
|
||||||
|
- Combinatorics
|
||||||
|
- Principle of Inclusion and Exclusion (PIE) once?
|
||||||
|
- Geometry
|
||||||
- Cross product, dot product, geometry primitives (shoelace, etc.)
|
- Cross product, dot product, geometry primitives (shoelace, etc.)
|
||||||
- Sweepline
|
- Sweepline
|
||||||
- Bitset??
|
- CPH 29, 30.1?
|
||||||
|
- Strings
|
||||||
> Written with [StackEdit](https://stackedit.io/).
|
- CPH 26.1, 26.2, 26.3
|
||||||
<!--stackedit_data:
|
- Hashing (once)?
|
||||||
eyJoaXN0b3J5IjpbMTMzNDQ0MzI5Miw3MzA5OTgxMTZdfQ==
|
- Trie?
|
||||||
-->
|
|
Reference in a new issue