var n,i,j,k,m:integer;
l,f,a,b:array[1..1000] of integer;
r:array[1..1000] of real;
begin
readln(n);
for i:=1 to n do begin read(l);a:=i;end;
for i:=1 to n do read(f);
for i:=1 to n-1 do
for j:=i+1 to n do
if (f/l)<(f[j]/l) then
begin
k:=l;l:=l[j];l[j]:=k;k:=f;f:=f[j];f[j]:=k;k:=a;a:=a[j];a[j]:=k;
end;
b[1]:=0;k:=0;m:=f[1];
fillchar(b,sizeof(b),0);
for i:=2 to n do
begin
for j:=1 to i-1 do
b:=b+l[i-j];
k:=k+f*b;
m:=m+f;
end;
for i:=1 to n do
write(a,' ');
writeln(k/m:0:2);
end.