讨论 / ..
shuizilong96 2008-12-05 20:12:00
点我顶贴 收藏 删除
var i,j,n,s:integer;

a,b:array [0..10000] of integer;

procedure Qsort(l,r:integer);

var ll,rr,t,m:integer;

begin

ll:=l;rr:=r;m:=a[random(r-l+1)+l];

repeat

while a[ll]<m do inc(ll);

while a[rr]>m do dec(rr);

if ll<=rr then

begin

t:=a[ll];a[ll]:=a[rr];a[rr]:=t;

inc(ll);dec(rr);

end;

until ll>rr;

if l<rr then Qsort(l,rr);

if ll<r then Qsort(ll,r);

end;

begin

readln(n);

for i:=1 to n do

read(a[i]);

qsort(1,n);

for i:=1 to n do

if a[i]<>a[i-1] then begin s:=s+1;b[s]:=a[i]; end;

writeln(s);

for i:=1 to s do

write(b[i],’ ’);

end.

查看更多回复
提交回复