문제를 보고 0을 기준으로 좌우대칭을 이루고 있기 때문에,
0을 기준으로 왼쪽만 구하고 오른쪽은 왼쪽을 구한 결과를 반전시키자 생각했다.
그래서, food.map((element, index) =>
{
answer += index.toString().repeat(parseInt(element/ 2))
})
칼로리가 food의 index이고,
개수가 element라는 점을 이용해
index를 문자열로 바꾸고
repeat(parseInt(element / 2))로
0을 기준 왼쪽만 찾아줬습니다.
이후, answer + '0' + answer.split('').sort((a,b)=> b-a).join('')
으로 0과 오른쪽을 구현해줬습니다.
제출한 코드 :
function solution(food) {
let answer = '';
food.map((element, index)=>
{
let temp = index.toString()
answer += temp.repeat(parseInt(element/ 2))
})
return answer+'0'+answer.split('').sort((a,b)=> b-a).join('');
}
'문제 풀기 > JavaScripts' 카테고리의 다른 글
문제 53. 명예의 전당(1)(난이도 7) (0) | 2024.08.02 |
---|---|
문제 52. 콜라 문제(난이도 7) (0) | 2024.07.31 |
문제 50. 가장 가까운 같은 글자(난이도 5)(lastIndexOf) (0) | 2024.07.31 |
문제 49. 두 개 뽑아서 더하기(난이도 5) (0) | 2024.07.31 |
문제 48. K번째수정렬(난이도)(난이도 5) (0) | 2024.07.31 |