> For the complete documentation index, see [llms.txt](https://jaywin.gitbook.io/leetcode/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://jaywin.gitbook.io/leetcode/solutions/0856-score-of-parentheses.md).

# 0856. Score of Parentheses

<https://leetcode.com/problems/score-of-parentheses>

## Description

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
```

**Example 4:**

```
**Input:** s = "(()(()))"
**Output:** 6
```

**Constraints:**

* `2 <= s.length <= 50`
* `s` consists of only `'('` and `')'`.
* `s` is a balanced parentheses string.

## ac

```java
```
