개발일기

[JavaScript] x 사이의 개수 본문

Algorithm

[JavaScript] x 사이의 개수

황대성 2024. 4. 18. 03:07

문제를 보고 그 어떤 방법도 떠오르지 않았음을 알림,,,

이 문제의 핵심은 split이라고 생각한다. 하지만 split의 s도 생각나지 않았다.

구글링을 했고, 기억하기 위해 기록해 둔다.

 

문제

 

풀이
function solution(myString) {
  const splits = myString.split("x")
  console.log(splits)
  // Expected output: ["o", "oo", "o", "", "o", ""]
  const answer = splits.map((item)=>{
    return item.length
  })
  console.log(answer)
  // Expected output: [1, 2, 1, 0, 1, 0]
  return answer
}
solution("oxooxoxxox");

 

split() 안에 값이 구분자가 되고 배열을 생성해준다.

위의 풀이에선 x가 구분자가 된다. 쉽게 생각해서 x가 쉼표가 된다고 생각하면 외우기 쉬울거 같다.

그 다음 배열 요소의 길이를 배열로 만들면 문제의 정답이 된다.

map 함수를 통해 새로운 배열을 추출하는 방법이 있고, for문을 활용하는 방법도 있다.

 

풀이2
function solution(myString) {
  const answer = []
  const splits = myString.split("x")
  console.log(splits)
  // Expected output: ["o", "oo", "o", "", "o", ""]
  for(let i = 0; i<splits.length; i ++){
    answer.push(splits[i].length)
  }
  console.log(answer)
  // Expected output: [1, 2, 1, 0, 1, 0]
  return answer
}
solution("oxooxoxxox");

 

설명을 위해 단계단계 나눠서 풀었음을 알림,,,,,,