100 #436. 排队接水

排队接水

题目描述

有 n 个人在一个水龙头前排队接水,假如每个人接水的时间为 TiTi

请编程找出这n个人排队的一种顺序,使得n个人的平均等待时间最小。

如果接水时间相同,先来先接。

输入格式

共两行,第一行为n(1n10001 \leq n \leq 1000);

第二行分别表示第1个人到第n个人每人的接水时间T1T2TnT_{1},T_{2},…,T_{n},每个数据之间有1个空格。

输出格式

有两行,第一行为一种排队顺序,即1到n的一种排列;

第二行为这种排列方案下的平均等待时间(输出结果精确到小数点后两位)。

样例

输入样例

10							
56 12 1 99 1000 234 33 55 99 812

输出样例

3 2 7 8 1 4 9 6 10 5
291.90

数据范围与提示

ti<=1e6t_i<=1e^6,不保证tit_i不重复

tit_i重复时,按照输入顺序即可(sort是可以的)