P5917 题解

· · 题解

不是很简单的绿题。

需要有一定思考的 DFS 题。

给每一种布局的 4 个矩形进行编号,暴力枚举每个位置放哪个矩形,包括横着放,即原来的 ab,以及竖着放,即长和宽倒过来的 ba

枚举好之后,计算各种布局的长和宽,根据长和宽计算面积,如果面积是最小值,那么标记一下 f_0f_i 为最小面积,已确定最小面积以及面积最小时长/宽是 i

计算面积,需要分类讨论

首先编号,右下角为 1 号,顺时针依次编号,宽肯定是左边宽和右边宽的最大值,上面两个不会给顶上去,因为不够长;

接着是长,至少是下面两个的长之和,但中间可能有空隙,如 32 长且 12 要宽、41 长且 21 要宽。

然后写出代码就可以了。