题意
构造一个长度为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("()")
}
}

京公网安备 11010502036488号