#992. 排队接水(water.cpp)
排队接水(water.cpp)
题目描述
有 个人在一个水龙头前排队接水,假如每个人的接水的时间为 ,请编程找出一种 个人排队的顺序,使得 个人的平均等待时间最小。 假设下一个人接着打水的这个切换过程不消耗时间,且注意,每个人的等待时间包括自己接水的时间和排队等待接水的时间。
输入输出格式
输入
第一行一个整数 ,。
第二行分别为每个人的接水时间 ,用空格隔开,。
输出
第一行为最优的排队顺序,即编号 的一种排列,每两个数字之间用空格隔开。 第二行为这种排列方案下的平均等待时间(保留两位小数)。
输入输出样例
样例
输入1
10
56 12 1 99 1000 234 33 55 99 812
输出1
3 2 7 8 1 4 9 6 10 5
532.00
时间及空间限制
1s, 256MB.