![]() |
||||||||||
|
||||||||||
Problem K. Transport ConstructionTime Limit: 10000/5000 MS (Java/Others) Memory Limit: 524288/524288 K (Java/Others)Total Submission(s): 191 Accepted Submission(s): 61 Problem Description There are $n$ cities in Byteland, labeled by $1$ to $n$. The $i$-th city is located at $(x_i,y_i)$. The Transport Construction Authority of Byteland is planning to open several bidirectional flights. Opening flight between the $i$-th city and the $j$-th city will cost $x_i\times x_j+y_i\times y_j$ dollars. The Transport Construction Authority is now searching for the cheapest way to connect all of $n$ cities, so that every pair of different cities are connected by these flights directly or indirectly. Please write a program to find the cheapest way. Input The first line of the input contains an integer $T(1\leq T\leq2000)$, denoting the number of test cases. In each test case, there is an integer $n(2\leq n\leq 100000)$ in the first line, denoting the number of cities in Byteland. For the next $n$ lines, each line contains $2$ integers $x_i,y_i(1\leq x_i,y_i\leq 10^6)$, denoting the coordinate of the $i$-th city. Note that different cities may have the same coordinate because they are too close to each other. It is guaranteed that $\sum n\leq 10^6$. Output For each test case, print a single line containing an integer, denoting the minimum total cost. Sample Input
Sample Output
Source | ||||||||||
|