Parallelepiped walk

Time Limit: 1000ms
Memory Limit: 10000KB
This problem will be judged on PKU. Original ID: 1444
64-bit integer IO format: %lld      Java class name: Main

Description

Two points A(x1, y1, z1) and B(x2, y2, z2) are placed on the surface of parallelepiped P = {(x, y, z): 0 <= x <= L, 0 <= y <= W, 0 <= z <= H} with L*W*H dimensions (see figure). These two points can be linked with various curves lying on the surface of P. You are to find out the square of the shortest curve length.

Parallelepiped dimensions L, W, H and coordinates of the points are integers, 0 <= L,W,H <= 1000.

Input

Input contains (in indicated order): L, W, H, x1, y1, z1, x2, y2, z2. The numbers are separated with spaces and end-of-line characters.

Output

Output should contain the square of the shortest curve length between points A and B on the surface of P.

Sample Input

5 5 2
3 1 2
3 5 0

Sample Output

36

Source

Language: 
Theme: 
Share Code? 

Powered by NB231 | Current Style: .