Churu and lost string
All submissions for this problem are available.
Read problems statements in Mandarin Chinese , Russian and Vietnamese
Churu is taking the course called “Introduction to Data Structures”. Yesterday, he learned how to use a stack to check is a given parentheses expression is balanced or not. He finds it intriguing, and more importantly, he was given an assignment. The professor gave him a string S containing characters “(” and “)”, and asked him numerous queries of the form (x, y), i.e., if the substring S[x, y] represents a balanced parentheses expression or not. Here, S[x, y] refers to the substring of S from index x to y (both inclusive), assuming 0-based indexing. Diligently working through his assignment, our ace student Churu finds that all the queries given by the professor represented balanced substrings. Later, Churu lost his original string but he has all the queries.
Churu wants to restore his original string. As there can be many valid strings, print any one among them.
- First line of input contains an integer T denoting the number of test cases.
- First line of each of test case contains two space-separated integers: N, K representing the length of the string and number of queries asked by professor, respectively.
- Each of the next K lines contains a space-separated pair of integers: x and y, denoting a query.
OutputPrint T lines, with the ith one containing the solution string for the ith test case.
Subtask #1: 20 points
- 1 ≤ T ≤ 5, 2 ≤ N ≤ 16, 1 ≤ K ≤ 20, x ≤ y
Subtask #2: 80 points
- 1 ≤ T ≤ 5, 2 ≤ N ≤ 2000, 1 ≤ K ≤ 30, x ≤ y
Input: 2 4 1 0 3 4 2 0 3 1 2 Output: ()() (())
For the first sample case, "(())" are "()()" are two possible outputs. Printing anyone will do.
|Tags||amitpandeykgp, dynamic-programming, greedy, ltime27, medium, sorting|
|Time Limit:||1 sec|
|Source Limit:||50000 Bytes|
|Languages:||C, CPP14, JAVA, PYTH, PYTH 3.6, PYPY, CS2, PAS fpc, PAS gpc, RUBY, PHP, GO, NODEJS, HASK, SCALA, D, PERL, FORT, WSPC, ADA, CAML, ICK, BF, ASM, CLPS, PRLG, ICON, SCM qobi, PIKE, ST, NICE, LUA, BASH, NEM, LISP sbcl, LISP clisp, SCM guile, JS, ERL, TCL, PERL6, TEXT, SCM chicken, CLOJ, FS|
Fetching successful submissions