[Refresh ! 코딩 테스트 / js]- 야근 지수

정대만·2025년 1월 31일

문제 풀이

  • 그냥 minheap 으로 푸는 문제임
  • but,.. js 에는 heap 이 내장되어 있지 않음 ㅠ
  • 따라서 남의 코드를 보고 배꼈음

나의 풀이

function solution(n, works) {
    var answer = 0;
    // 원래 이거 힙 문제인데 빡구현하기 귀찮아서 남의 코드 봄 \
    if(works.reduce((acc,curr)=>acc+curr,0)<n) return 0;
    works.sort((a,b)=>b-a);
    //젤 큰수대로 sort 해서 내림차순함
    while(n>0){
        // n을 줄어나가는 식으로 
        let max_= works[0];
        // 시작할때 여기가 잴 큼
        for(var i=0; i<works.length; i++){
            if(works[i]>=max_){
                n-=1;
                works[i]-=1;
                // 하나씩줄임
            }
         if(!n>0){
             break;
         }
        }    
        
    }
    return works.reduce((acc,cur)=> acc+ cur**2 ,0)

    
}
profile
안녕하세요

0개의 댓글