algorithm analysis 8784507