Google Code Jam Japan 2011 決勝 A. アンテナ修復
並べ終わった後のエレメントの長さを、E1, E2, ……, EKとすると、面積は、
なるべく大きい数同士が隣の方が得だろうと、
1 3 5 8 9 7 6 4 2
という風に並べたら、正解した。
import math def solve(K,E): E = sorted(E)[::-1] T = [E[i] for i in range(0,K,2)] + [E[i] for i in range(1,K,2)][::-1] ans = sum(T[i]*T[i+1] for i in range(K-1)) + T[-1]*T[0] return ans * 0.5 * math.sin(2*math.pi/K) for t in xrange(input()): K = input() E = map(int,raw_input().split()) ans = solve(K,E) print "Case #%s: %.32f" % (t+1,ans)