http://codeforces.com/problemset/problem/1013/c
给出n*2个数字,组成n个坐标点,让这些坐标点所能确定的面积最小.
方法就排序后,选其中连续的n个数作为x,剩下的按序作为y, 然后用xmax-xmin乘ymax-ymin 取最小解即可.
#include<bits/stdc++.h>
using namespace std;
long long p[211111];
int main()
{
int n;
while(cin>>n)
{
for(int i=0;i<n+n;i++)
{
scanf("%lld",&p[i]);
}
sort(p,p+n+n);
if(n<=1)
{
cout<<"0"<<endl;
continue;
}
long long ans=p[n-1]-p[0];
ans*=p[n+n-1]-p[n];
long long l=p[n+n-1]-p[0];
for(int i=1;i<=n;i++)
{
ans=min(ans,l*(p[i+n-1]-p[i]));
}
cout<<ans<<endl;
}
return 0;
}