求看着个题目用的算法
pascal吧
全部回复
仅看楼主
level 5
Stephenliu 楼主
const max=15000000;
var
n,i,j,r,k:longint;
f:array[1..max] of longint;
procedure qsort(l,r:longint);
var
i,j,x,k,tmp:longint;
begin
i:=l;
j:=r;
x:=f[(l+r) div 2];
repeat
while f[i]<x do inc(i);
while f[j]>x do dec(j);
if i<=j then
begin
tmp:=f[i]; f[i]:=f[j]; f[j]:=tmp;
inc(i); dec(j);
end;
until i>j;
if i<r then qsort(i,r);
if l<j then qsort(l,j);
end;
begin
assign(input, *count.in*); reset(input);
//assign(output, *count.out*); rewrite(output);
readln(n);
for i:=1 to n do
readln(f[i]);
qsort(1,n);
i:=1;
while i<n do
begin
write(f[i],* *);
r:=0;
k:=f[i];
while (i<=n) and (f[i]=k) do
begin
inc(r);
inc(i);
end;
writeln(r);
end;
close(input); close(output);
end.
2014年10月06日 06点10分 1
level 9
快排
2014年10月06日 07点10分 2
level 4
排序算法:快速排序
2014年10月06日 12点10分 3
level 5
Stephenliu 楼主
你他妈的是不是脑子有问题?
2014年10月11日 13点10分 5
level 3
有交换,还很长,果断快排
2014年10月11日 23点10分 6
觉觉觉觉nono
2015年11月22日 12点11分
1