✔️

답안

function sol(n, l){ //n:택배원 수, l:택배들 let answer = 0; //택배원 수 만큼의 배열 생성 let man = new Array(n).fill(0); //모든 택배가 상차 되었을 경우 종료 while (l.length !== 0){ //택배원 수 만큼 반복 for (let j = 0; j < man.length; j++){ //택배원이 배달하고있는 택배의 잔여거리가 0인경우(배송완료인경우) 택배상차 if (man[j] == 0 && l){ man[j] += l.shift(); //shift()는 배열의 첫번째 요소 삭제 } } //택배원들 배송거리 -1 처리 man = man.map(x => x = x -1); //1회 반복당 1의 시간증가 answer += 1; } //남은 택배 잔여거리 중 가장 많은 시간이 남은 택배를 더해줌 answer += Math.max.apply(null, man); return answer; } const 배달원 = 3; const 택배 = [1, 2, 1, 3, 3, 3]; console.log(sol(배달원, 택배));