Mirko found a wooden board and nails in his attic. Mirko hammered the nails into the board as fast as possible. The board can be modeled by a coordinate plane and the nails as points in it. No two nails have the same or the same coordinate.
In order to keep having fun, Mirko stole his sister's elastic hair band, spread it over all nails and then let go. The elastic, naturally, tightened around the nails.
Mirko then repeats these steps while there are at least three nails in the board:
- Write down the area of the shape enclosed by the hair band.
- Picks the leftmost, rightmost, topmost or bottommost nail in the board.
- Remove the chosen nail from the board; the elastic tightens again around the remaining nails.
Write a program that calculates the numbers written in step 1 of each iteration, if we know the nail Mirko picks in step of each iteration.
Input Specification
The first line contains the integer , the number of nails.
Each of the following lines contains two integers separated by a space, the coordinates of a nail. All coordinates will be between and . No two nails will share the same or coordinate.
The next line contains letters L
, R
, U
or D
. The letters represent the nails Mirko picked in order:
L
for the leftmost nail (smallest coordinate),R
for the rightmost nail (largest coordinate),U
for the topmost nail (largest coordinate),D
for the bottommost nail (smallest coordinate).
Output Specification
Output numbers, each on a separate line. The numbers are, in order, the areas that Mirko wrote down. Output numbers with one digit after the decimal point.
Scoring
In test cases worth points, will be less than .
Sample Input 1
5
1 4
2 2
4 1
3 5
5 3
LUR
Sample Output 1
9.0
6.5
2.5
Sample Input 2
8
1 6
2 4
3 1
4 2
5 7
6 5
7 9
8 3
URDLUU
Sample Output 2
34.0
24.0
16.5
14.0
9.5
5.0
The images below illustrate the state before each of the steps in the second example.
Comments