
😎풀이
logs 순회
1-1. 이전 마감 시간과 현재 마감 시간의 차를 통해 근무 시간 계산
1-2. 가장 긴 근무 시간을 갱신하며 탐색
1-3. 근무 시간이 동일하다면, 근무자 id가 낮은 사람의 id로 갱신
- 근무 시간이 가장 긴 사원의
id 반환
function hardestWorker(n: number, logs: number[][]): number {
let [hardestId, hardestTime] = logs[0]
for(let i = 1; i < logs.length; i++) {
const [_, prevTime] = logs[i - 1]
const [id, leaveTime] = logs[i]
const curTime = leaveTime - prevTime
if(hardestTime > curTime) continue
if(hardestTime === curTime) {
hardestId = Math.min(hardestId, id)
} else {
hardestId = id
hardestTime = curTime
}
}
return hardestId
};