add new solutions

This commit is contained in:
kanna5 2026-01-05 16:48:03 +09:00
parent 9c2c959a9b
commit 9a10695e8c
Signed by: kkyy
GPG key ID: 06332F3965E9B0CF
29 changed files with 1074 additions and 2 deletions

View file

@ -0,0 +1,27 @@
package q22
func gen(n, lvl, used int, buf []byte, ret []string) []string {
if buf == nil {
buf = make([]byte, 0, n*2)
}
if len(buf) == n*2 {
return append(ret, string(buf))
}
if used < n {
buf = append(buf, '(')
ret = gen(n, lvl+1, used+1, buf, ret)
buf = buf[:len(buf)-1]
}
if lvl > 0 {
buf = append(buf, ')')
ret = gen(n, lvl-1, used, buf, ret)
}
return ret
}
func generateParenthesis(n int) []string {
return gen(n, 0, 0, nil, nil)
}
var _ = generateParenthesis