嘟嘟嘟 正是因为有这样的数据范围,解法才比较暴力. 我们假设取出的长方体常和宽相等,即\(a * a * b\).这样我们每次换两条边相等,搞三次就行. 那么对于第\(k\)层中的第\((i, j)\)点\((k, i, j)\),求出以这个点为右下角的最大完好的正方形f[k][i][j].这个可以用倍增求.所以复杂度为\(O(n ^ 3 logn)\). 然后\(O(n ^ 2)\)枚举平面上的每一个点\((x, y)\),立体的就是每一竖条,那么对于每一竖条,我们要求的就是\(max \{(…