UESTC 1265

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mml5211314/article/details/50587572

Description

有一个城市需要建造,给你$N$个矿场的坐标$X$,$Y$,问把这么多矿坑全都包进城市的话,城市所需最小面积是多少(注意,城市为平行于坐标轴的正方形)

Input

第一行为$N$,表示矿场数目

下面为$N$行 每行两个数字$x_i$,$y_i$,表示第$i$行表示第$i$个矿场的坐标

$2≤N≤1000$

$0≤x_i,y_i≤1000 000 000$

Output

城市所需最小面积

Sample Input


0 0 
2 2

Sample Output

4

Hint

long long 请使用%lld输入输出


//这道题的题意很明显,就是建立一个面积最小正方形的区域,把所有的矿场包含里面,就是把所有点的横纵坐标进行排序,选择横纵坐标里面最大的一个点的数值作为正方形//区域的边长,进行求解

//代码如下

#include<cstdio>
#include<algorithm>
using namespace std;
int main()
{
	int n;
	long long x[1010],y[1010];
	while (scanf ("%d",&n)!=EOF)
	{
		int i;
		for (i=0;i<n;i++)
		{
			scanf ("%lld%lld",&x[i],&y[i]);
		}
		sort(x,x+n);
		sort(y,y+n);
		long long t1=x[n-1]-x[0];
		long long t2=y[n-1]-y[0];
		if (t1>t2)
		printf ("%lld\n",t1*t1);
		else
		printf ("%lld\n",t2*t2);
	}
	return 0;
}



























猜你喜欢

转载自blog.csdn.net/mml5211314/article/details/50587572