- 프로그래머스 - 과일 장수2025년 02월 07일
- redpome
- 작성자
- 2025.02.07.:36
점점 머리쓰는게 힘들어진다.
https://school.programmers.co.kr/learn/courses/30/lessons/135808
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
function solution(k, m, score) { const eachBox=[]; const numOfBox=Math.floor(score.length/m); const sortedScore=score.sort((a,b)=>b-a); for(let i=0;i<numOfBox*m;i+=m){ eachBox.push(sortedScore.slice(i,i+m)); } let sum=0; sum=eachBox.reduce((acc,curr)=>acc+Math.min(...curr)*m,0) return sum; }
score에 주어진 사과들을 내림차순으로 정렬시켜 m개만큼 담을 수 있도록 numOfBox로 나눈 몫을 생성하기로했다.for문에서는 score에서 나눈 사과의 몫만큼의 박스와 나눈 상자안의 m개의 사과를 곱하고 m만큼의 단위로 상자를 나눈다.
그 뒤로는 간단하게 reduce 메서드를 통해서 나뉘어진 상자들의 점수를 합산했다.
풀다보니 k 매개변수를 안 쓰게 되었는데 어떤 식으로 활용했는지 다른 사람들의 코드를 찾아보았다.
프로그래머스 Lv.1 과일 장수 JavaScript 풀이
문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/135808과일 장수가 사과 상자를 포장하고 있습니다. 사과는 상태에 따라 1점부터 k점까지의 점수로 분류하며, k점이 최상품의 사과이고 1점이
velog.io
위의 사람이 풀이는 아이디어가 비슷하면서도 더 짧게 코드를 만들었다. 그런데 여기서도 k 값을 사용하지는 않았다.
다른 사람의 풀이에서도 k를 사용하지 않은 것을 보았는데 이건 함정으로 준 매개변수인지 문제에서 혼란을 주려고 한건지는 모르겠다.
'프로그래머스' 카테고리의 다른 글
카드 뭉치 (0) 2025.03.07 최솟값 만들기 (그리디 알고리즘) (0) 2025.02.25 이상한 문자 만들기 (0) 2025.02.10 프로그래머스 - 소수 만들기 (2) 2025.01.14 프로그래머스-문자열 내 마음대로 정렬하기 (1) 2025.01.02 다음글이전글이전 글이 없습니다.댓글
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)