题目描述
纪中的食堂是十分热闹的,当然那都是拥挤的缘故了(^__^)。但纪中学生是好孩子,都会自觉排队打饭,而每个人打饭都要消耗时间。在K个人的队伍中,第i个人打饭的时间为Ti。由于每个窗口同一时间只能服务一个同学,所以后面的同学都得等着。在示范性高中评估那天,专家们也来到了学生食堂就餐。在专家来到食堂之前,同学们都已经来到了食堂。为了给专家们对纪中人有个好的评价,同学们所排的队伍一定要让专家们尽快吃上午餐(专家们当然不会插队,也不会接受同学们的礼让,他们一定会等排在前面的同学打完饭后再打饭)。人都有主观认识,专家觉得久等了,是因为全部同学等待的长了,所以同学们等待的时间总和越小,专家越快吃上饭。
现在你的任务就是确定能让专家们尽快吃上饭的排队方案。
输入
第一行一个整数K(1<=K<=300),表示排在专家们的学生的人数。
第二行以后为K个正数,每行十个数表示从1号到K号的学生的打饭时间,T1,T2,……Tk.(0
var
b:array[0..301] of longint;
a:array[0..301] of real;
i,j,n:longint;
begin
assign(input,'canteen.in');
reset(input);
assign(output,'canteen.out');
rewrite(output);
readln(n);
for i:=1 to n do
begin
read(a[i]);
b[i]:=i;
end;
for i:=1 to n-1 do
for j:=i+1 to n do
if a[i]>a[j] then
begin
a[0]:=a[i];
a[i]:=a[j];
a[j]:=a[0];
b[0]:=b[i];
b[i]:=b[j];
b[j]:=b[0];
end;
for i:=1 to n do write(b[i],' ');
close(input);
close(output);
end.