#U1516OS1. Field Reduction
Field Reduction
Farmer John 的 N 头奶牛 (5≤N≤50,000) 都位于他的二维字段中的不同位置。FJ 想用一个边平行于 x 轴和 y 轴的矩形栅栏围住所有的奶牛,并且他希望这个栅栏尽可能小,以便它包含每一头奶牛(允许边界上的奶牛)。
不幸的是,由于上个季度的牛奶产量低,FJ 的预算很紧。因此,如果可能,他想建造一个更小的围栏围栏,并且他愿意从他的牛群中出售多达三头奶牛来实现这一目标。
请帮助 FJ 计算在从牛群中移走最多三头奶牛后,他可以用栅栏围起来的最小区域(然后为剩余的奶牛建造最紧密的围墙)。
对于这个问题,请将奶牛视为点,将栅栏视为四个线段的集合(即,不要将奶牛视为“单位正方形”)。请注意,答案可能为零,例如,如果所有剩余的奶牛最终都站在一条共同的垂直或水平线上。
输入格式(文件 reduce.in):
输入的第一行包含 N。接下来的 N 行每行包含两个整数,指定牛的位置。奶牛位置是 1…40,000 范围内的正整数。
输出格式(文件 reduce.out):
写出一个整数,指定 FJ 从他的牛群中移走最多三头精心挑选的奶牛后可以用栅栏围起来的最小区域。
SAMPLE INPUT:
6
1 1
7 8
10 9
8 12
4 100
50 7
SAMPLE OUTPUT:
12