[COCI2014-2015#1] KLOPKA
题目描述
在平面直角坐标系上有 n n n 个点。
现在要用一个正方形将点框起来,使得每一个点都能在正方形的内部或边上。要求这个正方形的边平行于坐标轴。
求出这个正方形的最小面积。
输入格式
第一行一个整数 n n n。
接下来 n n n 行,一行两个整数 x , y x,y x,y,表示一个点的横纵坐标。
输出格式
一行一个整数,表示正方形的最小面积。
样例 #1
样例输入 #1
3
3 4
5 7
4 3
样例输出 #1
16
样例 #2
样例输入 #2
4
5 1
1 5
10 5
5 10
样例输出 #2
81
提示
样例输入输出 1 解释
一个方案是正方形的右上角在 ( 7 , 7 ) (7,7) (7,7),左下角在 ( 3 , 3 ) (3,3) (3,3)。
数据规模与约定
对于 100 % 100\% 100% 的数据,保证 2 ≤ n ≤ 20 2\le n\le 20 2≤n≤20, 1 ≤ x , y ≤ 100 1\le x,y\le 100 1≤x,y≤100。
说明
本题总分 80 80 80 分。
本题译自 Croatian Open Competition in Informatics 2014/2015 Contest #1 T2 KLOPKA。
C++实现
#include
#include
using namespace std;
int main()
{
int n,x,y,maxx,minx,maxy,miny;
scanf(“%d%d%d”,&n,&x,&y);
maxx=minx=x,maxy=miny=y;
for(int i=1;i<n;i++)
{
scanf(“%d%d”,&x,&y);
maxx=max(maxx,x);
maxy=max(maxy,y);
minx=min(minx,x);
miny=min(miny,y);
}
int a=max(maxx-minx,maxy-miny);
cout<<a*a;
return 0;
}
后续
接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,记录日常的编程生活、比赛心得,感兴趣的请关注,我后续将继续分享相关内容