城市修建(逆天的取值范围) long long, numeric_limits<long long>::max()

城市修建
时间限制:1S内存限制:64MB
描述
有一个城市需要修建,给你N个民居的坐标X,Y,问把这么多民居全都包进城市的话,城市所需最小面积是多少(注意,城市为平行于坐标轴的正方形)

输入描述
第一行为N,表示民居数目(2≤N≤1000)

下面为N行,每行两个数字Xi,Yi,表示该居民的坐标(-1e9≤xi,yi≤1e9)

输出描述
城市所需最小面积

#include 
using namespace std;


int main() {
    pair<long long, long long> tmp;
    long long minx, maxx, miny, maxy;
    minx = numeric_limits<long long>::max();
    miny = numeric_limits<long long>::max();
    maxx = numeric_limits<long long>::min();
    maxy = numeric_limits<long long>::min();
    int n;
    cin >> n;
    while(cin >>tmp.first >> tmp.second){
        minx = minx < tmp.first ? minx : tmp.first;
        miny = miny < tmp.second ? miny : tmp.second;
        maxx = maxx > tmp.first ? maxx : tmp.first;
        maxy = maxy > tmp.second ? maxy : tmp.second;
    }
    // cout << minx << " " << miny << " " << maxx << " " << maxy << endl;
    long long res = max((maxy - miny), (maxx - minx));
    res *= res;
    cout << res;

    return 0;
}

你可能感兴趣的:(算法)