#include<iostream> using namespace std; int n;//门数*2,这里为便于编程默认n为偶数 int k;//k种括号 //dg函数返回值表示在第door对括号保持flag状态和noclose个未闭合门数情况下第door+1对括号的位置的可能(主要判断左括号) int dg(int door,int flag, int noclose)//door 是门的序号,flag为1表示立即闭合,为0表示不立即闭合,noclose是包括此门在内的未闭合门数 { if (2 * (door + 1) == n)//相当于一棵树如果从根走到叶子则为一种方法...