切换到宽版
  • 4452阅读
  • 1回复

排队接水问题 [复制链接]

上一主题 下一主题
离线少先队
 
只看楼主 倒序阅读 0 发表于: 2006-12-06
排队接水问题

有N个人在一个水龙头前排队接水, 每个人接水的时间有长有短为Ti, 编程找到一种这N个人排队的顺序,使平均等待时间达到最小.
离线少先队
只看该作者 1 发表于: 2006-12-06
var n,i,j,p:integer; s:real;
  t,a:array [1..1000] of integer;
begin
read(n);
for i:=1 to n do begin read(t); a:=i; end;
for i:=1 to n-1 do
  for j:=i+1 to n do
    if t>t[j] then
      begin
        p:=t; t:=t[j]; t[j]:=p; p:=a; a:=a[j]; a[j]:=p;
      end;
for i:=n downto 1do
  s:=s+i*t[n+1-i];
s:=s/n; writeln(s:0:2);
for i:=1 to n do write(a,' ');
writeln;
end.
快速回复
限100 字节
 
上一个 下一个