Algorithms and Discrete Applied Mathematics