对于一个「可调整的」 $n\times n$ 的 $01$ 矩阵,考虑在每一行与每一列的两个点间连一条边。 那么我们将得到一个 $2n$ 个点,$2n$ 条边的无向图,图中的每个连通块都是一个边数为偶数的简单环 https://blog.csdn.net/yanshannan/article/details/77453049 给出了一个图示。 可以发现,对于一个连通块,交换任意两行或两列之后,这些点仍然保持联通。 因此,每个连通块的大小确定了一个「可调整的」矩阵的等价类。 现在相当于把 $2n$ 个点拆分成若干连通块,求方案数。可以发现这里连通块的大小必须 $\ge 4$。 显然这等价于把 $n$ 无序地拆分成若干个 $\ge 2$ 的数。 考虑 DP,设 $f(i,j)$ 表示将 $i$ 无序地拆分成 $j$ 个 $\ge 2$ 正整数的方案数(其中 $i\ge 2j$),则有: $$f(i,j)=f(i-2,j-1)+f(i-j,j)$$ 其含义为,若拆分出的最小数为 $2$,那么相当于将除去 $2$ 后剩下的 $i-2$ 分成 $j-1$ 份;否则我们把拆出的每个数都减一,这部分的方案数就与 $f(i-j,j)$ 一一对应。 初值为 $f(0,0)=1$,答案为 $\sum_{2j\le n} f(n,j)$。 于是就做完了,时间复杂度 $O(n^2)$。
题目2069 Marisa
AAAAAAAAAA
4
评论
2022-07-15 15:53:18
|