✏️기록하는 즐거움
article thumbnail
반응형

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

1. |  제출

<javascript />
function solution(s) { let convertedWord = s.toLowerCase(); let pCount = convertedWord.split("p").length; let yCount = convertedWord.split("y").length; return pCount === yCount ? true : false; }

 

2. |  풀이과정

2.1. 첫 번째 제출 - for문 사용

<javascript />
function solution(s) { let pCount = 0; let yCount = 0; let convertedWord = s.toLowerCase(); for (let i = 0; i < s.length; i++) { if (convertedWord[i] === "p") { pCount++; } else if (convertedWord[i] === "y") { yCount++; } else { continue; } } return pCount === yCount ? true : false; }

개수를 비교할 때 대문자와 소문자를 구별하지 않기 때문에 문자열 s를 소문자로 변환한 후 해당 값이 p면 pCount를, y면 yCount를 증가하여 개수를 비교했다.

 

2.2. 두 번째 제출 - split 사용하기

<javascript />
function solution(s) { let convertedWord = s.toLowerCase(); let pCount = convertedWord.split("p").length; let yCount = convertedWord.split("y").length; return pCount === yCount ? true : false; }

split은 괄호 안의 구분자를 기준으로 문자열을 나눠준다.

따라서, p와 y를 split으로 나눈 문자열 배열의 길이는 문자열 내 p와 y의 개수와 같기 때문에 해당 값을 비교하여 반환하면 된다.

 

3. |  개념

3.1. String.prototype.split()

  • String 객체를 지정한 구분자를 이용하여 여러 개의 문자열로 나눈다.
  • 구분자가 빈 문자열일 경우 str의 각각의 문자가 배열의 원소 하나씩으로 변환된다.

 

반응형
profile

✏️기록하는 즐거움

@nor_coding

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!