문자열 내 p와 y의 개수

김지원·2021년 6월 21일
0
post-thumbnail

📃 문제 설명

대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다.

예를 들어 s가 "pPoooyY"면 true를 return하고 "Pyy"라면 false를 return합니다.

🚫 제한 조건

  • 문자열 s의 길이 : 50 이하의 자연수
  • 문자열 s는 알파벳으로만 이루어져 있습니다.

🧐 코드 분석

  • p와 y의 개수에 대문자도 해당된다. (toLowerCase메서드를 사용해야한다.)
  • 하나도 없을 경우에도 true 값이 반환된다.
  • 개수가 다를 경우에 false 값이 반환된다.

🏃‍♂️ js 실행 코드

function solution(s){
    const p = s.match(/p/gi);
    const y = s.match(/y/gi);

    if (p !== null && y !== null) return p.length === y.length;
    if (p === null && y === null) return true;
    
    return false;
}

대문자를 모두 toLowerCase메서드를 이용해 소문자로 바꾼 후 split 메서드로 배열에 삽입한다.

p와 y의 개수가 들어갈 pNum, yNum 변수를 0으로 초기화한다.

pNum와 yNum의 개수가 같으면 true 다르면 false가 나온다.


profile
backend-developer

0개의 댓글