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

磁带存储问题 [复制链接]

上一主题 下一主题
离线雨化石
 
只看楼主 正序阅读 0 发表于: 2006-12-06
有N个程序需要存储在磁带上,它们的长度分别是L1,L2,L3,……Ln,它们使用的频率分别为F1,F2,F3……Fn。求各程序在磁带最佳存储顺序,使得平均检索时间最少。
离线天涯浪仙
只看该作者 2 发表于: 2006-12-06
我学过
离线zhengyuan95
只看该作者 1 发表于: 2006-12-06
var n,i,j,k,m:integer;
  l,f,a,b:array[1..1000] of integer;
  r:array[1..1000] of real;
begin
readln(n);
for i:=1 to n do begin read(l);a:=i;end;
for i:=1 to n do read(f);
for i:=1 to n-1 do
for j:=i+1 to n do
if (f/l)<(f[j]/l) then
begin
k:=l;l:=l[j];l[j]:=k;k:=f;f:=f[j];f[j]:=k;k:=a;a:=a[j];a[j]:=k;
end;
b[1]:=0;k:=0;m:=f[1];
fillchar(b,sizeof(b),0);
for i:=2 to n do
begin
for j:=1 to i-1 do
b:=b+l[i-j];
k:=k+f*b;
m:=m+f;
end;
for i:=1 to n do
write(a,' ');
writeln(k/m:0:2);
end.
快速回复
限100 字节
 
上一个 下一个