|
||||||||||
StonesTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 306 Accepted Submission(s): 81 Problem Description There are N piles of stones on the desk at the beginning and N -1 rounds follows. For each round, two piles are chosen at random and we merge them into a new pile. If the new pile has K stones, then we will get K*K points. For example, there are three piles of stones and they have 2, 5 and 4 stones respectively. If in the first round we merge the first pile and the third pile, a new pile with 6 stones are created and we will get 6*6=36 points. The second round we will create a new pile with 11 stones and get 121 points. Now we get 157 points in total. Similarly, we will get 170 points if we merge the first pile and the second pile and will get 202 points if we merge the second pile and third pile. The expected points we will get is (157+170+202)/3 = 176.333333. Your task it to compute the expected points we will get after N-1 rounds. Input The first line contains an integer T indicating the number of test cases. The first line of each test case contains an integer N indicating the number of piles. The second line contains N integers Ai indicating the size of each pile. Technical Specification 1. 1<=T<=50 2. 1<=N <=100 3. 1<=Ai<=1000 Output For each test case, output the case number first, then the expected points we will get rounded to 2 digits after the decimal point.. Sample Input
Sample Output
Author hanshuai Source | ||||||||||
|