Skip to content

Overview of Project 3

Project 3, Minimum Overlap Coverage, requires implementing a recursive backtracking algorithm. The objective is to select a subset of student groups from a provided data file such that their union covers all student IDs specified in a target query, including multiple occurrences of the same ID, while minimizing the total number of student IDs across the selected groups. Students must implement the MinimumOverlap class, providing a constructor to load the set data and a findMinimumOverlap method to compute the optimal coverage or return UINT_MAX if no such cover exists. Grading is primarily based on the efficiency and execution speed of the implementation against benchmark solutions. The project strictly prohibits the use of teamwork or generative AI.