문제: 유효한 괄호인지 확인하기
function solution(s) {
let count = 0;
const arr = [...s];
if (arr.length %2 == 1) {
return false;
}
for(let i = 0; i < arr.length; i++) {
if (count < 0 || count > (arr.length / 2)) {
return false;
}
if (arr[i] === "(") {
count++;
}
if (arr[i] === ")") {
count--;
}
if (i === arr.length-1) {
if (count === 0) return true;
else return false;
}
}
}
시간 줄이기 위해서 한 일
1. 꼭 for문이 아니어도 되는 if문 for문 스코프 밖으로 빼기
2. 중복되는 if문 검사조건 삭제
배운것
1. forEach는 반환을 하지 못한다
2. 만약 substr, slice로 뒤에서부터 문자열을 자르고 싶다면
ex) abcde
substr(-2) -> de
substr(3,2) -> de
slice(-2) -> de
slice(3,5) -> de
이렇게 써야 한다
'코딩 > 코테' 카테고리의 다른 글
[프로그래머스] 기능개발 (스택/큐) (0) | 2023.08.29 |
---|---|
[구름] 합격자 찾기 (0) | 2023.04.06 |
[자바스크립트] 두 날짜 사이의 일수 구하기 (0) | 2022.06.17 |
[자바스크립트] 각 자릿수의 합으로 홀수 짝수 구별하기 (0) | 2022.06.03 |
[자바스크립트] 배열 속 부메랑 패턴의 개수 구하기 (0) | 2022.06.01 |