专栏文章
题解:P13581 [NWRRC 2023] Axis-Aligned Area
P13581题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @mioidqr2
- 此快照首次捕获于
- 2025/12/02 19:42 3 个月前
- 此快照最后确认于
- 2025/12/02 19:42 3 个月前
题意与分析
给出 根木棍,求它们所能围成的最大的封闭图形的面积。
当输入为 
此时,可以围成的最大的图形面积是 。
2 2 4 7 时,参考下面这张图片。

此时,可以围成的最大的图形面积是 。
思路
还是观察刚才这张图片,显然还有其它围法。但之所以样例的答案是围成矩形,就说明矩形在所有围法中是最佳的。
现在,我们已经确定要围成矩形。
矩形面积公式
大家都知道矩形面积公式是 ,其中 是长和宽。但是我们应该怎么得到矩形的长和宽呢?
假设有两条边 是矩形上的对边,那么显然 。
现在我们有一组对边 ,不一定满足 ,那么我们就需要截断其中一条线端,使它们的长度能够满足 。
现在我们有一组对边 ,不一定满足 ,那么我们就需要截断其中一条线端,使它们的长度能够满足 。
- 如果 ,那么截取 的长度,使 ;
- 如果 ,那么截取 的长度,使 。
总结出规律:。
要求我们将 分成两组,分别求组内的最小值,再求乘积(面积)。题目求面积的最大值。
最优分组策略
已知 。
- 如果 分成一组,其余边一组,根据公式可知结果是 ;
- 如果 分成一组,其余边一组,根据公式可知结果也是 ;
- 如果 分成一组,其余边一组,根据公式可知结果是 。
综上,将 分成一组, 分成一组是最优分组策略。
所以求出其围成的矩形的面积,公式如下。
所以求出其围成的矩形的面积,公式如下。
代码
CPP#include<bits/stdc++.h>
using namespace std;
int a[5];
int main(){
for(int i=1; i<=4; i++)
cin >> a[i];
cout << a[1]*a[3];
}
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...