#1575. WBRACK2 - Dãy ngoặc không đúng 2

Bộ nhớ: 256 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

Biểu thức ngoặc là xâu chỉ gồm hai ký tự ( hoặc ). Biểu thức ngoặc đúng được định nghĩa một cách đệ quy như sau:

  • Biểu thức rỗng là biểu thức ngoặc đúng;
  • Nếu A là biểu thức ngoặc đúng thì (A) cũng là một biểu thức ngoặc đúng;
  • Nếu A và B là hai biểu thức ngoặc đúng thì AB cũng là một biểu thức ngoặc đúng.

Xét các xâu có độ dài 2𝑛 không là biểu thức ngoặc đúng, trong đó có đúng 𝑛 ngoặc mở và 𝑛 ngoặc đóng. Sắp xếp các xâu này theo thứ tự từ điểm, biết ( có thứ tự nhỏ hơn ).

Yêu cầu: Cho 𝑛, 𝑘 , hãy xác định xâu có thứ tự từ điển thứ 𝑘 .

Dữ liệu:

  • Gồm hai số nguyên 𝑛, 𝑘\ (𝑘 ≤ 10^{18}) ;

Kết quả:

  • Gồm một dòng, chứa một xâu là xâu độ dài 2𝑛 có thứ tự từ điển thứ 𝑘 .

Ví dụ:

Dữ liệu:

2 2

Kết quả:

)(()

Giới hạn:

  • Subtask \#1: 𝑛 ≤ 20 ;
  • Subtask \#2: 𝑛 ≤ 120 ;