Sinh các xâu dấu ngoặc đúng


Submit solution

Points: 2
Time limit: 1.0s
JAVA11 2.0s
Python 3 2.0s
Memory limit: 98M
JAVA11 977M
Python 3 977M

Author:
Problem type
Allowed languages
Ada, Assembly, Awk, C, C++, C11, CLANG, CLANGX, Classical, COBOL, Coffee, CSC, D lang, DART, F95, FORTH, Fortrn, GAS32, GO, Haskell, Itercal, Java, kotlin, LEAN, LISP, LUA, MONOVB, Nasm, OCAML, Pascal, Perl, php, PIKE, prolog, Pypy, Python, Ruby 2, RUST, Scala, SCM, SED, SWIFT, TCL, TUR, V8JS, VB, ZIG

Cho số nguyên dương \(n\), liệt kê những xâu chỉ chứa các ký tự mở "(" và đóng ngoặc ")" có độ dài \(2*n\) mà tạo thành các dấu đóng mở ngoặc hợp lệ.

Đầu vào

Một dòng duy nhất chứa hai số nguyên dương \(n\) \((1 \le n \le 11)\).

Đầu ra

Mỗi dòng một xâu kết quả, in ra theo thứ tự từ điển tăng dần.

Ví dụ

Đầu vào:

3

Đầu ra:

((()))
(()())
(())()
()(())
()()()
tichpx

Comments


  • 2
    DuyAnhhh  commented on Sept. 18, 2020, 6:32 a.m.

    Khuyến cáo mọi người dùng "\n" thay vì endl nhá :3


    • 6
      TICHPX  commented on Sept. 18, 2020, 7:46 a.m.

      Dùng endl sẽ chậm hơn là "\n" nên thông thường người ta có lệnh sau ở đầu chương trình

      #define endl "\n"

      • 1
        DuyAnhhh  commented on Sept. 18, 2020, 8:09 a.m.

        Hay thầy ơi