boolean2 2008-10-27 22:23:00
点我顶贴
收藏
删除
program yy(input,output);
var
n,m,i,j,k,zs:longint;
zz:int64;
bb:real;
a,b,id:array[1..100000]of longint;
procedure kk(lx,rx:longint);
var
x,t,i,j,no:longint;
begin
i:=lx;j:=rx; x:=a[random(j-i+1)+i];
repeat
while (a[i]<x) do inc(i);
while (a[j]>x) do dec(j);
if (i<=j) then
begin
t:=a[i];
a[i]:=a[j];
a[j]:=t;
inc(i);
dec(j);
end;
until (i>j);
if (lx<j) then kk(lx,j);
if (i<rx) then kk(i,rx);
end;
begin
readln(n);
for i:=1 to n do
begin
read(a[i]);
b[i]:=a[i];
end;
kk(1,n);
for i:=1 to n-1 do
begin
for j:=1 to n do
if a[i]=b[j] then begin
write(j,’ ’);
b[j]:=0;
break;
end;
end;
for i:=1 to n do
if a[n]=b[i] then write(i);
k:=n+1;
i:=0;
while (k<>0) and (i<n) do
begin
dec(k);
inc(i);
zs:=zs+a[i]*k;
end;
writeln;
writeln(zs/n:0:2);
end.