프로그래머스 LV.3 야근 지수
야근 지수는 무작정 큰 수 하나만 남은 시간을 전부 할애하여차감한다고 답이 나오는 것이 아니다.즉 차감의 우선순위가 있기 때문에 우선순위 큐를 떠올라야 한다. 예를 들어 " 4, 3, 3 " 가 주어졌을 때, 4시간의 시간이 주어지면 "2, 2, 2"으로 만들어야 제곱의 합이 제일 작고 "0, 3, 3"로 만들면 제곱의 합이 크다는 것을 알 수 있다. 그러므로, 우선순위 큐를 활용해서 존재하는 작업 중 가장 큰 값이 top인 max heap으로 구성하여N시간 동안 top에 위치한 작업량을 잠깐 끄집어내서 한 시간씩 빼주고 다시 push 해준다. 물론 vector sort로 계속 정렬할 수 있지만,이는 vector만 사용한 코드의 시간 복잡도는 O(n*m)이므로n번 처리하는 과정에서 매번 m개의 작업을..