second part algorithmic complexity 9904331