[백준11399_자바스크립트(javascript)] - ATM

경이·2024년 6월 3일

𝑩𝑶𝑱 (𝒋𝒔)

목록 보기
54/325

🔴 문제

ATM


🟡 Sol

const fs = require('fs');
const path = process.platform === 'linux' ? '/dev/stdin' : 'Wiki\\input.txt';
const input = fs.readFileSync(path).toString().trim().split('\n');
const result = [];

const times = input[1]
  .split(' ')
  .map(Number)
  .sort((a, b) => Number(a) - Number(b));

times.reduce((pre, cur) => {
  result.push(pre + cur);
  return pre + cur;
}, 0);

console.log(result.reduce((pre, cur) => pre + cur));

🟢 풀이

쉬운 그리디 유형 문제다.
어차피 기다리는거 시간 똑같은거 아냐 ?라고 생각할 수도 있다.(내가 그랬음)
하지만 마지막사람만 기다리는 시간이 동일한 것이고 모든사람이 기다리는 시간의 총합에는 문제가 간다.
이 문제는 간단하게 업무처리시간이 짧은 순서대로 정렬해준 뒤 누적합을 누적합해주면 된다.


🔵 Ref

profile
록타르오가르

0개의 댓글