题意
构造一个长度为2*n的合法括号序列,最大的嵌套深度是r。
思路
考虑先把最大嵌套深度的合法括号构造出来,即放r个左括号,再放r个右括号,最后用单个括号补全到2n的长度
Go代码
package main import "fmt" func main() { var n, r int fmt.Scan(&n, &r) for i := 0; i < r; i++ { fmt.Print("(") } for i := 0; i < r; i++ { fmt.Print(")") } for i := 2*r + 1; i <= 2*n; i+=2 { fmt.Print("()") } }