Codeathon Prep
— Discord
Various Authors
We will be having a small, interactive event, where all questions and additions are encouraged, to prepare for problems that may come up in a competition as such. The talk will be structured such like:
- Data Structures
- Arrays
- Trees(Key-Value structures)
- Lists
- Graphs
- Naive Solutions
- First solve the problem, then apply a technique
- Categorize the problem
- Techniques
- Greedy
- Sometimes doing what is locally optimal, provides a correct solution
- In cases like spanning trees, minimizing at every step gives an optimal solution
- Dynamic
- If you find that you are computing similar results over and over, sometimes it's best to try and save those steps and reuse those results
- Divide and Conquer
- If the problem can be split into smaller problems, it may be worth breaking the problem into smaller ones
- Intuition
- Sometimes problems can be tricky, and you may need to remember some result from some previous class
- In the case where the problem is very straightforward, but the parameters are very large, it can be useful to try this
- One case is summing from 1..n, there's a famous summation formula for this.
- Greedy