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
- 데비안
- iterator
- 자료구조와함께배우는알고리즘입문
- 스프링부트핵심가이드
- 알파회계
- ㅒ
- 네트워크 설정
- 이터레이터
- 처음 만나는 AI수학 with Python
- 자바편
- 서버설정
- 목록처리
- d
- 친절한SQL튜닝
- GIT
- 리눅스
- network configuration
- 자료구조와 함께 배우는 알고리즘 입문
- 스프링 시큐리티
- /etc/network/interfaces
- resttemplate
- 코드로배우는스프링웹프로젝트
- Kernighan의 C언어 프로그래밍
- 페이징
- 선형대수
- 처음 만나는 AI 수학 with Python
- 구멍가게코딩단
- baeldung
- 코드로배우는스프링부트웹프로젝트
- 티스토리 쿠키 삭제
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
