Created for Algorithm Design and Analyse course