[ZOJ1482]Partitions 题目大意: 给定一个\(n\times n(n\le3000)\)的\(\texttt 0/\texttt1\)矩阵,求去掉所有的\(1\)以后,矩阵被分成几个四连通块. 空间限制1M. 思路: 由于空间限制为1M,因此我们需要一个空间\(\mathcal O(n)\)的做法. 考虑并查集,每次遇到相邻的连通块就合并. 由于合并时只需要考虑上下两行,此时连通块个数不超过\(2n\),因此我们只需要空间回收,使得并查集上只保留这不超过\(2n\)个结点即可.…