排队序列
类型:程序题

已知现在有 n 个人需要打电话,他们已经排好了队伍,每个人打电话的时间为 Ti。请你帮助他们找到一个排队打电话的队列方案,使队伍的平均等待时间更短。

输入格式

第一行:一个正整数 n,表示一共 n 个人。

第二行:n 个数字,分别表示第 1 个人到第 n 个人每人的打电话时间 T1,T2,…,Tn,每个数据之间有 1 个空格。

输出格式

第一行为一种排队顺序,即原先队列编号 1 到 n 的一种排列;

第二行为这种排列方案下的平均等待时间(输出结果精确到小数点后两位,按照 C 语言的浮点数保留规则进行保留)。

输入样例

10
56 12 1 99 1000 234 33 55 99 812

输出样例

3 2 7 8 1 4 9 6 10 5
291.90

说明提示

1 ≤ n ≤ 100000

1 ≤ Ti ≤ 1000000

如果有多种排列都可以让平均等待时间最短,则输出其中字典序最小的序列。字典序指的是英文单词在字典中排序使用的规则顺序。

限制

时间限制:1000,内存限制:524288

代码编辑器 加载中...
留空使用题目默认限制
{{resultStatus.text}}
正在加载运行记录...
乐编题库AI助手
人工客服
微信扫码联系客服
历史对话
{{ s.title || '未命名对话' }}
{{ s.created_at }}
暂无历史对话
我能帮助你什么?