Skip to main content

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.