100 atcoder#ABC180E. [ABC180E] Traveling Salesman among Aerial Cities

[ABC180E] Traveling Salesman among Aerial Cities

Score : 500500 points

Problem Statement

In a three-dimensional space, there are NN cities: City 11 through City NN. City ii is at point (Xi,Yi,Zi)(X_i,Y_i,Z_i).

The cost it takes to travel from a city at point (a,b,c)(a,b,c) to a city at point (p,q,r)(p,q,r) is pa+qb+max(0,rc)|p-a|+|q-b|+\max(0,r-c).

Find the minimum total cost it takes to start at City 11, visit all other cities at least once, and return to City 11.

Constraints

  • 2N172 \leq N \leq 17
  • 106Xi,Yi,Zi106-10^6 \leq X_i,Y_i,Z_i \leq 10^6
  • No two cities are at the same point.
  • All values in input are integers.

Input

Input is given from Standard Input in the following format:

NN

X1X_1 Y1Y_1 Z1Z_1

\vdots

XNX_N YNY_N ZNZ_N

Output

Print the minimum total cost it takes to start at City 11, visit all other cities at least once, and return to City 11.

2
0 0 0
1 2 3
9

The cost it takes to travel from City 11 to City 22 is 10+20+max(0,30)=6|1-0|+|2-0|+\max(0,3-0)=6.

The cost it takes to travel from City 22 to City 11 is 01+02+max(0,03)=3|0-1|+|0-2|+\max(0,0-3)=3.

Thus, the total cost will be 99.

3
0 0 0
1 1 1
-1 -1 -1
10

For example, we can visit the cities in the order 11, 22, 11, 33, 11 to make the total cost 1010. Note that we can come back to City 11 on the way.

17
14142 13562 373095
-17320 508075 68877
223606 -79774 9979
-24494 -89742 783178
26457 513110 -64591
-282842 7124 -74619
31622 -77660 -168379
-33166 -24790 -3554
346410 16151 37755
-36055 51275 463989
37416 -573867 73941
-3872 -983346 207417
412310 56256 -17661
-42426 40687 -119285
43588 -989435 -40674
-447213 -59549 -99579
45825 7569 45584
6519344