CF1152D.Neko and Aki's Prank

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Neko is playing with his toys on the backyard of Aki's house. Aki decided to play a prank on him, by secretly putting catnip into Neko's toys. Unfortunately, he went overboard and put an entire bag of catnip into the toys...

It took Neko an entire day to turn back to normal. Neko reported to Aki that he saw a lot of weird things, including a trie of all correct bracket sequences of length 2n2n .

The definition of correct bracket sequence is as follows:

  • The empty sequence is a correct bracket sequence,
  • If ss is a correct bracket sequence, then (s)(\,s\,) is a correct bracket sequence,
  • If ss and tt are a correct bracket sequence, then stst is also a correct bracket sequence.

For example, the strings "(())", "()()" form a correct bracket sequence, while ")(" and "((" not.

Aki then came up with an interesting problem: What is the size of the maximum matching (the largest set of edges such that there are no two edges with a common vertex) in this trie? Since the answer can be quite large, print it modulo 109+710^9 + 7 .

输入格式

The only line contains a single integer nn ( 1n10001 \le n \le 1000 ).

输出格式

Print exactly one integer — the size of the maximum matching in the trie. Since the answer can be quite large, print it modulo 109+710^9 + 7 .

输入输出样例

  • 输入#1

    1
    

    输出#1

    1
    
  • 输入#2

    2
    

    输出#2

    3
    
  • 输入#3

    3
    

    输出#3

    9
    

说明/提示

The pictures below illustrate tries in the first two examples (for clarity, the round brackets are replaced with angle brackets). The maximum matching is highlighted with blue.

首页