问题描述 :
The tiny country of Waterlogged is protected by a series of levees that form a quadrilateral as shown below:
Lawrence of Arabia
The quadrilateral is defined by four vertices. The levees partition the country into four quadrants. Each quadrant is identified by a pair of vertices representing the outside edge of that quadrant. For example, Quadrant 1 shown below is defined by the points (x1, y1) and (x2, y2) .
Lawrence of Arabia
It happens very often that the country of Waterlogged becomes flooded, and the levees need to be reinforced, but their country is poor and they have limited resources. They would like to be able to reinforce those levees that encompass the largest area first, then the next largest second, then the next largest third, and the smallest area fourth.
Help Waterlogged identify which quadrants are the largest, and the length of the levees around them.
输入:
here will be several sets of input. Each set will consist of eight real numbers, on a single line. Those numbers will represent, in order:
X1 Y1 X2 Y2 X3 Y3 X4 Y4
The four points are guaranteed to form a convex quadrilateral when taken in order — that is, there will be no concavities, and no lines crossing. Every number will be in the range from -1000.0 to 1000.0 inclusive. No Quadrant will have an area or a perimeter smaller than 0.001. End of the input will be a line with eight 0.0′s.
输出:
here will be several sets of input. Each set will consist of eight real numbers, on a single line. Those numbers will represent, in order:
X1 Y1 X2 Y2 X3 Y3 X4 Y4
The four points are guaranteed to form a convex quadrilateral when taken in order — that is, there will be no concavities, and no lines crossing. Every number will be in the range from -1000.0 to 1000.0 inclusive. No Quadrant will have an area or a perimeter smaller than 0.001. End of the input will be a line with eight 0.0′s.
样例输入:
1 2 1 5 5 2 2 0
3.5 2.2 4.8 -9.6 -1.2 -4.4 -8.9 12.4
0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
样例输出:
5.100 11.459 3.400 9.045 0.900 6.659 0.600 4.876
44.548 38.972 21.982 25.997 20.342 38.374 10.038 19.043