QOJ.ac

QOJ

時間限制: 1.0 s 記憶體限制: 512 MB 總分: 100

#15960. 括号

统计

我们按照如下方式定义合法括号序列

  • ()[] 是合法括号序列;
  • 如果 A 是合法括号序列,则 (A)[A] 也是合法括号序列;
  • 如果 AB 都是合法括号序列,则它们的拼接 AB 也是合法括号序列。

在一个包含至少一对方括号[ 及其对应的 ])的合法括号序列中,每一个方括号(无论是开括号还是闭括号)都被替换为了开圆括号 (,从而得到了一个损坏的括号序列

例如,(((((((())) 都是损坏的括号序列。第一个序列可以由合法括号序列 [] 得到。第二个序列只能由以下四个合法括号序列之一得到:[]((()))([](()))(([]()))((([])))

你的任务是:对于给定的损坏括号序列,计算可能得到该损坏序列的合法括号序列的数量。

输入格式

第一行包含一个偶数 $N$ ($2 \le N \le 30000$),表示给定的损坏括号序列的长度。

第二行包含 $N$ 个字符 (),表示给定的损坏括号序列。

输出格式

输出单行,包含一个整数,表示可能的合法括号序列的数量。由于答案可能很大,请将答案对 $1000000009$ 取模后输出。

样例

输入样例 1

4
((()

输出样例 1

2

样例说明 1

对应的合法括号序列为:[]()([])

输入样例 2

8
((((((((

输出样例 2

14

样例说明 2

对应的合法括号序列为:[][][][][[]][][][[]][[]][][][[]][[[]]][][[][]][][][[][]][][[[]]][[[[]]]][[][[]]][[[]][]][[][][]][[[][]]][][[]][]

数据范围

  • 评测用例满足 $N \le 50$ 的测试点积 20 分。
  • 评测用例满足 $N \le 1000$ 的测试点积 45 分。

Editorials

IDTypeStatusTitlePosted ByLast UpdatedActions
EditorialOpen Official EditorialQingyu- Download

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.