排队打水 pascal

来源:百度知道 编辑:UC知道 时间:2024/06/12 19:31:45
排队打水问题,贪心算法做,怎么做啊,知道的说一下

type rtype=record
num,data:longint;
end;
var i,j,n:longint;
total:int64;
x:real;
a:array [1..10000] of rtype;

procedure qsort(l,r:longint);
var i,j,mid:longint;
temp:rtype;
begin
i:=l; j:=r;
mid:=a[(i+j) div 2].data;
repeat
while a[i].data<mid do inc(i);
while a[j].data>mid do dec(j);
if i<=j then begin
temp:=a[i];
a[i]:=a[j];
a[j]:=temp;
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,'water.in');
assign(output,'water.out');
reset(input);
rewrite(output);
readln(n);
for i:=1 to n do
begin
read(a[i].data);
a[i].num:=i