[LeetCode] Determine if String Halves Are Alike

준규·2022년 11월 15일
0

문자열의 길이가 짝수인 문자열 s가 주어질 때 s를 절반으로 나누어서 앞쪽 절반을 a, 뒤쪽 절반을 b라고 할 때

a,b 의 모음의 수가 같으면 alike 라고 한다.

만약 주어진 s가 alike이면 true를 아니라면 false를 리턴하는 문제이다.

Example을 보자

const halvesAreAlike = function (s) {
  const a = s.slice(0, s.length / 2);
  const b = s.slice(s.length / 2);

  const vowels = (string) => {
    const matches = string.match(/[aeiou]/gi);
    return matches ? matches.length : 0;
  };

  return vowels(a) === vowels(b) ? true : false;
};

먼저 문자열을 파라미터로 받았을 때 문자열 내의 모음의 갯수를 리턴해주는 도우미 함수를 만들기로 했다.

정규식을 사용해서 match 메소드를 이용해서 모음의 갯수를 리턴해주는 함수를 만든다음

s를 a,b 두 파트로 나눈다음 vowels(a) 와 vowels(b) 의 값을 비교해서 둘의 값이 같다면 true를 아니라면 false를 리턴해주었다.

submit을 해보니

정답이었다!

profile
안녕하세요 :)

0개의 댓글