CF1152D Neko and Aki's Prank

题目描述

Neko 正在 Aki 家的后院玩他的玩具。Aki 决定恶作剧一下,偷偷地在 Neko 的玩具里放了猫薄荷。不幸的是,他下手太重,把整袋猫薄荷都倒进了玩具里…… Neko 花了一整天才恢复正常。他向 Aki 报告说,他看到了很多奇怪的东西,包括一个包含所有长度为 $2n$ 的合法括号序列的 [trie](https://en.wikipedia.org/wiki/Trie)。 合法括号序列的定义如下: - 空序列是合法括号序列; - 如果 $s$ 是合法括号序列,那么 $(\,s\,)$ 也是合法括号序列; - 如果 $s$ 和 $t$ 都是合法括号序列,那么 $st$ 也是合法括号序列。 例如,字符串 "(())"、"()()" 是合法括号序列,而 ")(" 和 "((" 不是。 Aki 随后想出了一个有趣的问题:这个 trie 的最大匹配(即没有两个边有公共顶点的最大边集)的大小是多少?由于答案可能很大,请输出答案对 $10^9+7$ 取模后的结果。

输入格式

输入仅一行,包含一个整数 $n$($1 \le n \le 1000$)。

输出格式

输出一个整数,表示该 trie 的最大匹配的大小。由于答案可能很大,请输出答案对 $10^9+7$ 取模后的结果。

说明/提示

下图展示了前两个样例的 trie(为清晰起见,圆括号被替换为尖括号)。最大匹配用蓝色高亮显示。 ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF1152D/364c839d3a5d6c2987f41486d9a1c09bc9880efd.png) ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF1152D/a47292c3f5348a0f5d679fa952fd06c1a21a7fc0.png) 由 ChatGPT 4.1 翻译