택배 배달

WooBuntu·2020년 9월 3일
0

JS 100제

목록 보기
31/34

택배 배달

const count = 3;
const schedule = [1, 2, 1, 3, 3, 3];

function deliver(count, schedule) {
  const hash = {};
  let result = 0;
  for (let i = 1; i <= count; i++) {
    hash[i] = [];
  }
  schedule.forEach((distance, idx) => {
    hash[(idx % count) + 1].push(distance);
  });

  while (count > 0) {
    for (const key in hash) {
      hash[key][0]--;
      if (hash[key][0] == 0) {
        hash[key].shift();
        if (hash[key].length == 0) {
          delete hash[key];
          count--;
        }
      }
    }
    result++;
  }
  return result;
}
console.log(deliver(count, schedule));

0개의 댓글