CSE 494: Competitive Programming and Problem Solving
Welcome to CSE 494! This course focuses on competitive programming and advanced algorithmic problem-solving techniques.
Course Overview
This course provides a comprehensive introduction to competitive programming, covering fundamental algorithms, data structures, and problem-solving strategies commonly used in programming contests. Students will develop their algorithmic thinking skills through weekly practice problems and competitions.
Topics Covered
The course covers a wide range of topics including:
- Foundations: Basic algorithms and data structures
- Graph Algorithms: Graph traversal, shortest paths, and network flows
- Dynamic Programming: Advanced DP techniques and optimization
- Data Structures: Trees, range queries, and segment trees
- Advanced Topics: String algorithms, number theory, combinatorics, computational geometry, and game theory
Course Format
- Weekly Competitions: 2-hour in-person contests with problems worth points
- Codeforces Participation: Earn credit by solving problems in rated contests
- Practice Problems: In-class problems and course materials for skill development
Getting Started
Check out the Syllabus for detailed information about the course, including meeting times, grading policies, and competition rules.