algorithm assignment