Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |
Tags
- network configuration
- 티스토리 쿠키 삭제
- 처음 만나는 AI수학 with Python
- 목록처리
- 처음 만나는 AI 수학 with Python
- 서버설정
- 네트워크 설정
- 코드로배우는스프링부트웹프로젝트
- Kernighan의 C언어 프로그래밍
- d
- ㅒ
- 친절한SQL튜닝
- iterator
- baeldung
- 선형대수
- 리눅스
- GIT
- 코드로배우는스프링웹프로젝트
- 구멍가게코딩단
- 자료구조와함께배우는알고리즘입문
- 자료구조와 함께 배우는 알고리즘 입문
- 이터레이터
- resttemplate
- 스프링부트핵심가이드
- 자바편
- 알파회계
- 데비안
- /etc/network/interfaces
- 페이징
- 스프링 시큐리티
Archives
- Today
- Total
bright jazz music
올바른 괄호 본문
괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어
"()()" 또는 "(())()" 는 올바른 괄호입니다.
")()(" 또는 "(()(" 는 올바르지 않은 괄호입니다.
'(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return 하고, 올바르지 않은 괄호이면 false를 return 하는 solution 함수를 완성해 주세요.
제한사항
문자열 s의 길이 : 100,000 이하의 자연수
문자열 s는 '(' 또는 ')' 로만 이루어져 있습니다.
입출력 예
s answer
"()()" true
"(())()" true
")()(" false
"(()(" false
입출력 예 설명
입출력 예 #1,2,3,4
문제의 예시와 같습니다.
function solution(s){
const stack = [];
for(const char of s) {
if(char === '(') {
stack.push(char);
} else {
if(stack.length === 0) return false; // 닫을 게 없음
stack.pop();
}
}
return stack.length === 0; // 스택이 비어있어야 함
}
// function solution(s){
// var answer = true
// // 아래오 같이 풀면 ')('에 대응 못함
// const obj = {};
// const parenthesisStringArr = s.split('');
// // console.log(parenthesisStringArr)
// // parenthesisStringArr.forEach((e) => Object.has(obj, 'e') ? )
// parenthesisStringArr.forEach((e) => obj[e] ? obj[e] += 1 : obj[e] = 1)
// if(obj["("] !== obj[")"] ) {
// return false
// }
// return answer;
// }
Comments