生成括号 Paul是一名数学专业的同学,在课余选修了C++编程课,现在他能够自己写程序判断判断一个给定的由'('和')'组成的字符串是否是正确匹配的。可是他不满足于此,想反其道而行之,设计一个程序,能够生成所有合法的括号组合,请你帮助他解决这个问题。 时间限制:1000 内存限制:65536 输入 输入只有一行N,代表生成括号的对数(1 ≤ N ≤ 10)。 输出 输出所有可能的并且有效的括号组合,按照字典序进行排列,每个组合占一行。 样例输入 3 样例输出 ((())) (()()) (())() ()(()) ()()()
正确答案:参考程序(C++):生成括号同4743/4427,回溯生成所有合法括号组合,字典序。样例N=3→5种。核心:回溯括号。
试卷来源:202109 青少年等级考试C/C++真题三级