排队打饭(思维场)

时间限制: 1000 ms 内存限制: 65536 kb
总通过人数: 5 总提交人数: 6

题目描述

在沙河西区的食堂里,有 $n$ 个人在同一个窗口排队打饭,假如每个人打饭的时间为$t_i$,请编程找出 $n$ 个人排队的顺序,使 $n$ 个人的平均等待时间最小。

输入格式

共两行

第一行为一个正整数,表示排队人数 $n$

第二行为 $n$ 个整数,第 $i$ 个整数表示第i个人打饭时间 $t_i$

输出格式

共两行

第一行为n个整数,表示平均等待时间最短的排队顺序(按输入时的人员编号表示,若两个人的打饭时间$t_i$相同,优先输出靠前的编号)

第二行为一个浮点数,表示这种方案下的平均等待时间(保留两位小数)

输入样例

10 
56 12 1 99 1000 234 33 55 99 812

输出样例

3 2 7 8 1 4 9 6 10 5
291.90

数据范围与约定

$0<n<1000,0≤t_i<10^6$

相关推荐