Description
求$N$个节点的无向连通图有多少个,节点有标号,编号为$1~N$.
$1<=N<=50$
Sol
在计数类$DP$中,通常要把一个问题划分成若干个子问题,以便于执行递推.
一个连通图不容易划分,而一个不连通的无向图则很容易划分成结点更少的两部分.所以我们把问题转化成用$N$个点的无向图总个数减去$N$个点的不连通无向图的个数.
$N$个点的无向图总个数显然是$2^N*(N-1)/2$,还是简单说下叭,就是$N$个点连成完全图的边数显然是$N*(N-1)/2$,然后每条边都可取可不取,所以就是$2^N*(N-1)/2$.
现在我们要把问题划分成互斥的子问题 $OvO$.不连通的图由若干个连通图构成.我们可以枚举$1$结点所在的联通块包含的结点数$k$,从$2~N$这$N-1$个结点中选出$k-1$个结点,显然有$C_N-1^k-1$种.剩余$N-k$个结点构成任意无向图,显然有$2^(N-k)*(N-k-1)/2$种.