code-kata 8일차

임채현·2022년 1월 19일
0

function isValid(s) {
  if (s.includes('{]') || s.includes('(]') || s.includes('[}') || s.includes('[)') || s.includes('(}') || s.includes('{)'))
  {return false;}

  else if (s.length == 1) {
    return false;
  }

  else if (s.length == 2 && s[0] == s[1]) {
    return false;
  }

  else {
    return true;
  }
}

나는 문제를 무조건 같은걸로 감싸거나 데칼코마니처럼 대칭성이 있어야한다고 생각해서 코드를 풀었다. 조건문의 첫번째 경우를 보면 대칭성이 반드시 깨진다. 두번째 경우를 보면 길이가 1이면 반드시 false를 반환한다. 왜냐하면 감싸줄께 없기 때문이다. 3번째의 경우는 {{, ((와 같은 경우를 모두 false로 처리한다. 나머지는 모두 true로 반환한다.

function isValid(s) {
  if (s.includes('()') || s.includes('[]') || s.includes('{}') )
  return true;
}

사실 문제는 내가 생각한거 보다 더 쉬웠다. 시작할때 감싸는 동종의 괄호가 1개라도 있으면 바로 true가 반환된다. 그 뒤의 경우는 전혀 고려할 필요가 없었다.

profile
열심히 살고 싶은 임채현입니다.

0개의 댓글

관련 채용 정보