Dãy ngoặc

Xem PDF



Thời gian:
Pypy 3 2.0s

Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 1200 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Có thể định nghĩa khái niệm dãy ngoặc đúng dưới dạng đệ quy như sau:

  1. "\(()\)" là dãy ngoặc đúng

  2. \(C\) là dãy ngoặc đúng nếu \(C = (A)\) hay \(C = AB\) với \(A, B\) là các dãy ngoặc đúng.

Ví dụ dãy ngoặc đúng: \((), (()), ()(), (())()\)

Ví dụ dãy ngoặc sai: \()(, ((((, ()((, )))), )()(\)

Bạn hãy viết chương trình liệt kê tất cả các dãy ngoặc đúng có chiều dài \(n\) (\(n\) chẵn)

Input

  • Là số nguyên \(n\) \((n\) chẵn, \(2 \le n \le 30)\)

Output

  • In số \(m\) là số lượng các dãy ngoặc đúng có chiều dài \(n\)

Example

Test 1

Input
4
Output
2
Note

Ví dụ 1: Có 2 dãy ngoặc đúng là: \((())\), \(()()\)

Test 2

Input
2
Output
1
Note

Ví dụ 2: Có 1 dãy ngoặc đúng l

Bình luận (2)

Mới nhất
Tải bình luận...