切换到宽版
  • 4679阅读
  • 2回复

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

上一主题 下一主题
离线雨化石
 
只看楼主 正序阅读 0 发表于: 2006-12-06
有N个人在一个水龙头前排队接水, 每个人接水的时间有长有短为Ti, 编程找到一种这N个人排队的顺序,使平均等待时间达到最小.
离线zhengyuan95
只看该作者 2 发表于: 2006-12-06
var n,i,j,t:integer;
  k:real;
  a,b:array[1..1000] of integer;
begin
readln(n);
for i:=1 to n do
begin read(a);b:=i;end;
for i:=1 to n-1 do
for j:=i+1 to n do
if a>a[j] then
begin
t:=a;a:=a[j];a[j]:=t;
t:=b;b:=b[j];b[j]:=t;
end;
t:=0;k:=0;
for i:=n downto 1 do
begin
inc(t);
k:=k+a[t]*i;
end;
for i:=1 to n do write(b,' ');
writeln(k/n:0:2);
end.
不知道对不对?
离线雨化石
只看该作者 1 发表于: 2006-12-06
简单吧!
快速回复
限100 字节
 
上一个 下一个