玩过《雷顿》就知道这题可以贪心

小等于2人:1,2->

3人时:

1,3->

1<-

1,2->

1<-

否则:

1,2->

2<-

max1,max2->

1<-

OR:

1,max1->

1<-

2,max2->

2<-


于是数据规模-2


Program P1700;
var
t,n,i,j:longint;
l,r:longint;
a:array[1..1000] of longint;
procedure qsort(l,r:longint);
var
i,j,m,p:longint;
begin
i:=l;
j:=r;
m:=a[(l+r) shr 1];
repeat
while (a[i]<m) do inc(i);
while (a[j]>m) do dec(j);
if i<=j then
begin
p:=a[i];a[i]:=a[j];a[j]:=p;
inc(i);
dec(j);
end;
until i>j;
if l<j then qsort(l,j);
if i<r then qsort(i,r);

end;
function max(a,b:longint):longint;
begin
if a<b then exit(b) else exit(a);
end;
function min(a,b:longint):longint;
begin
if a>b then exit(b) else exit(a);
end;

function ww(x:longint):longint;
var
i,j:longint;
begin
if x=1 then exit(a[1]);
if x=2 then exit(a[2]);
if x=3 then exit(a[1]+a[2]+a[3]);
i:=2*a[1]+a[x]+a[x-1];
j:=2*a[2]+a[1]+a[x];
exit(ww(x-2)+min(i,j));
//1,2-> 1< r1,r2-> 2<=
end;
begin
read(t);
while (t>0) do
begin
read(n);
for i:=1 to n do read(a[i]);
qsort(1,n);
l:=1;r:=n;

writeln(ww(n));

dec(t);
end;
end.