반응형
856. Score of Parentheses
Given a balanced parentheses string s, return the score of the string.
The score of a balanced parentheses string is based on the following rule:
- "()" has score 1.
- AB has score A + B, where A and B are balanced parentheses strings.
- (A) has score 2 * A, where A is a balanced parentheses string.
Example 1:
Input: s = "()"
Output: 1
Example 2:
Input: s = "(())"
Output: 2
Example 3:
Input: s = "()()"
Output: 2
계획
문제 해결 전략
우선 () 로 되있는 괄호는 1점
괄호안에 괄호가 있으면 () 1 점에 *2가 되어서 2점
만약 3중괄호라면 ((())) 4점
이 문제는 stack을 이용해서 풀어줄것입니다.
해설
let stack = [0];
for (i in s) {
if (s[i] == "(") {
stack.push(0);
}
else {
last = stack.pop();
stack[stack.length - 1] += 2 * last || 1
}
}
return stack.pop();
반응형
'개발공부 > LeetCode' 카테고리의 다른 글
[JavaScript] 49. Group Anagrams 쉬운설명, hasmap사용 (0) | 2022.03.20 |
---|---|
[JavaScript] 33. Search in Rotated Sorted Array - 쉬운설명 바이너리 서치 활용 (0) | 2022.03.19 |
[JavaScript]34. Find First and Last Position of Element in Sorted Array - 쉬운설명 (0) | 2022.03.17 |
[JavaScript] 946. Validate Stack Sequences 쉬운설명 (0) | 2022.03.16 |
[JavaScript] 138. Copy List with Random Pointer, 해시맵 사용, 쉬운설명 (0) | 2022.03.13 |