ComputerScience/알고리즘, 프로그래머스
[Lv.1] 푸드 파이트 대회 (String(str).repeat())
VictorMeredith
2023. 2. 1. 13:46
1. 문제
2. 전략
1) food array의 1부터 마지막까지 각각 요소를 나누기 2한값의 버림 값이 한쪽사람이 먹을 해당 음식의 양이다.
2) 새로운 문자열에 그 음식의 양 만큼 반복해서 쌓는다
3) 문자열 str이 완성되면 0을 추가하고 str을 뒤집어서 뒤에 연결하여 return 한다.
function solution(food) {
var answer = '';
let arr = [];
let str = '';
for (let i = 1; i < food.length; i++) {
str += String(i).repeat(Math.floor(food[i]/2));
//str에 (총음식양/2)의 정수부분만큼 1부터 반복하여 추가해준다.
}
arr = [...str].reverse().join('')
//str을 배열로만들고 순서를 뒤집은 후 다시 연결해준다.
//(spread연산자, reverse(), join() )
answer = str + '0' + arr // 합친다!
return answer;
}
3. 알아야할 사항
1) String(a).repeat(n) : a를 n만큼 반복해서 리턴한다.