CS106A Final Project

by Marcin X


To avoid overcrowding of labs once we return to work from the COVID-19 lockdown, we're introducing a shift system to which users will be assigned. My program takes in a CSV list of users and their first, second, and third choices of shifts, randomizes the assignment, and then scores for meeting the preferences in a loop. After a number of iterations (usually based on time, i.e. 60 seconds), the program returns the best scoring combination of users and their shift assignment.