Don't be afraid of challenges

[프로그래머스- Lv.2] 귤고르기 본문

이것이 코딩테스트다

[프로그래머스- Lv.2] 귤고르기

초아롱 2024. 9. 14. 16:58

https://school.programmers.co.kr/learn/courses/30/lessons/138476?language=javascript

function solution(k, tangerine) {
    var answer = 0;

   const array = tangerine.reduce((acc,cur)=>{
      acc[cur] = (acc[cur] || 0) +1
       return acc;
   },{});
    const result = Object.values(array).sort((a,b)=>b-a);
  for(let i =0; i<result.length; i++){
      answer++;
      k -= result[i];
      if(k <=0) return answer;
          
  }
    
}
정확성 테스트
테스트 1 통과 (3.37ms, 37.2MB)
테스트 2 통과 (3.63ms, 37.1MB)
테스트 3 통과 (3.26ms, 37.3MB)
테스트 4 통과 (2.67ms, 37.2MB)
테스트 5 통과 (5.20ms, 36.9MB)
테스트 6 통과 (3.70ms, 37.1MB)
테스트 7 통과 (3.07ms, 37.1MB)
테스트 8 통과 (2.99ms, 37.1MB)
테스트 9 통과 (3.03ms, 37.1MB)
테스트 10 통과 (4.43ms, 37.2MB)
테스트 11 통과 (0.22ms, 33.4MB)
테스트 12 통과 (0.10ms, 33.4MB)
테스트 13 통과 (0.07ms, 33.4MB)
테스트 14 통과 (0.07ms, 33.4MB)
테스트 15 통과 (0.14ms, 33.4MB)
테스트 16 통과 (0.07ms, 33.4MB)
테스트 17 통과 (0.09ms, 33.4MB)
테스트 18 통과 (0.09ms, 33.4MB)
테스트 19 통과 (0.07ms, 33.4MB)
테스트 20 통과 (0.08ms, 33.5MB)
테스트 21 통과 (0.38ms, 33.4MB)
테스트 22 통과 (0.49ms, 33.5MB)
테스트 23 통과 (0.35ms, 33.6MB)
테스트 24 통과 (1.03ms, 33.7MB)
테스트 25 통과 (3.33ms, 36.2MB)
테스트 26 통과 (14.36ms, 40.8MB)
테스트 27 통과 (82.77ms, 63.6MB)
테스트 28 통과 (63.42ms, 45.3MB)
테스트 29 통과 (78.97ms, 50.4MB)
테스트 30 통과 (77.13ms, 64.9MB)
테스트 31 통과 (19.14ms, 37.4MB)
테스트 32 통과 (13.26ms, 37.8MB)
테스트 33 통과 (76.21ms, 53.7MB)
테스트 34 통과 (83.60ms, 50.6MB)

 

채점 결과
정확성: 100.0
합계: 100.0 / 100.0
 
function solution(k, tangerine) {
    var answer = 0;

   const array = tangerine.reduce((acc,cur)=>{
      acc[cur] = (acc[cur] || 0) +1
       return acc;
   },{});
    
    const result = Object.values(array).sort((a,b)=>b-a);
    
    for(const t of result){
      answer++;
     if(k> t) k-= t;
      else break;
  }
    return answer;
}
채점을 시작합니다.
정확성 테스트
테스트 1 통과 (2.96ms, 37.1MB)
테스트 2 통과 (3.69ms, 37.3MB)
테스트 3 통과 (4.39ms, 37.2MB)
테스트 4 통과 (3.89ms, 36.8MB)
테스트 5 통과 (3.36ms, 37MB)
테스트 6 통과 (3.66ms, 37MB)
테스트 7 통과 (2.83ms, 37.1MB)
테스트 8 통과 (3.07ms, 37.1MB)
테스트 9 통과 (5.10ms, 37.1MB)
테스트 10 통과 (3.01ms, 37.2MB)
테스트 11 통과 (0.19ms, 33.4MB)
테스트 12 통과 (0.08ms, 33.4MB)
테스트 13 통과 (0.08ms, 33.5MB)
테스트 14 통과 (0.08ms, 33.4MB)
테스트 15 통과 (0.08ms, 33.4MB)
테스트 16 통과 (0.10ms, 33.4MB)
테스트 17 통과 (0.08ms, 33.4MB)
테스트 18 통과 (0.09ms, 33.5MB)
테스트 19 통과 (0.08ms, 33.4MB)
테스트 20 통과 (0.08ms, 33.4MB)
테스트 21 통과 (0.21ms, 33.4MB)
테스트 22 통과 (0.30ms, 33.5MB)
테스트 23 통과 (0.34ms, 33.5MB)
테스트 24 통과 (0.81ms, 33.7MB)
테스트 25 통과 (3.53ms, 36.2MB)
테스트 26 통과 (13.04ms, 40.8MB)
테스트 27 통과 (89.10ms, 63.5MB)
테스트 28 통과 (41.79ms, 46.6MB)
테스트 29 통과 (69.00ms, 50.5MB)
테스트 30 통과 (80.87ms, 63.5MB)
테스트 31 통과 (11.70ms, 37.5MB)
테스트 32 통과 (14.09ms, 37.8MB)
테스트 33 통과 (66.73ms, 53.7MB)
테스트 34 통과 (64.58ms, 50.7MB)
채점 결과
정확성: 100.0
합계: 100.0 / 100.0

 

 

여기서 다시 복습

 

for ... in ~ , for ... of ~

 

for of는 value의 반복

 

for in은 key나 인덱스의 반복