[프로그래머스] 푸드 파이트 대회 (JS)

hhkim·2023년 6월 30일
0

Algorithm - JavaScript

목록 보기
44/188
post-thumbnail

풀이 과정

  1. 음식의 수를 2로 나눈 몫만큼 배열에 담기: Math.floor()
  2. 다 담았으면 reverse()로 뒤집은 배열 만들기
  3. 1의 배열 끝에 0과 2의 배열을 push(), concat()
  4. 배열을 문자열로 변환: join()

코드

function solution(food) {
  const result = [];
  for (let i = 1; i < food.length; ++i) {
    const count = Math.floor(food[i] / 2);
    for (let j = 0; j < count; ++j) {
      result.push(i);
    }
  }
  const reverse = [...result].reverse();
  result.push(0);
  return result.concat(reverse).join('');
}

🤔

다른 사람 풀이를 보니 애초에 결과를 배열이 아닌 문자열로 두고 repeat()을 쓰면 간단하게 해결이 가능하다는 걸 알았다.

0개의 댓글