250x250
Notice
Recent Posts
Recent Comments
Link
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Archives
Today
Total
관리 메뉴

devlog_owen

[프로그래머스] 명예의 전당(1) 본문

algorithm/(js)프로그래머스

[프로그래머스] 명예의 전당(1)

developer_owen 2023. 12. 4. 16:12
728x90

문제

 

알고리즘 스터디에서 오늘 푼 문제. 사실 1시부터 풀어야했는데 무슨 자신감으로 20분동안 밥먹고 나머지 시간동안 풀다가 결국 시간내에 다 못품...

k 숫자만큼 명예의 전당에 오르고, 명예의 전당이 갱신될때마다 최하위점수를 배열에 넣어서 최종적으로 반환해야 한다.


 

 

나의 풀이

function solution(k, score) {
    //매일 발표된 명예의 전당의 최하위 점수를 return
    let jeondang = []
    let minScore = []

   
   for(let i=0; i<score.length; i++){
       jeondang.push(score[i]);
       jeondang.sort((a,b) => a-b)
       
       if(jeondang.length > k){
           jeondang.shift()
       }
       
       minScore.push(Math.min(...jeondang))
       }
    return minScore
   }

 

팀원들거를 보니까 foreach, slice를 쓰던데... 난 못쓰겠어서 그냥 다르게 풀었다.

 

먼저 jeondang, minScore을 빈배열로 놓고, 반복문을 돌리면서 jeondang을 오름차순으로 재배열했다.

그 다음 조건문으로 jeondang의 길이가 k를 넘게 되면 제일 작은 수를 삭제한다.

그리고 jeondang 배열에서 가장 작은 수를 minScore에 넣고 그렇게 최종적으로 만들어진 minScore을 반환.

 


 

다른 사람 풀이

 

본문1


 

회고

 

알고리즘 문제를 하루에 1개씩은 꼭 풀어야겠다. 문제를 잠깐 안푸니까 진짜 그동안 어떻게 이런 문제를 풀었지 생각이 들정도로 문제가 어렵게 느껴지고 메서드들도 생각이 안난다. 그래서 요즘 알고리즘 스터디를 하면서 시간내에 풀지 못한 문제들이 많이 생긴다. 다음번 스터디에서는 꼭 시간내에 풀어야지 


 

 

 

 

728x90

'algorithm > (js)프로그래머스' 카테고리의 다른 글

[프로그래머스] 옹알이(2)  (0) 2023.12.11
[프로그래머스] 콜라문제  (1) 2023.12.01
[프로그래머스] H-Index  (0) 2023.11.17
[프로그래머스] K번째 수  (0) 2023.11.17
[프로그래머스] 귤 고르기  (0) 2023.11.16