max-min algorithm