排队序列

ex891866 程序题 共 个子题

已知现在有 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

本题为编程题,提交代码并运行通过测试点后判分。

正在加载题目数据…
已答 /
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析
提交记录
共 条 仅展示自由练习提交
正在加载提交记录…
讨论
发布
登录后参与讨论 立即登录
发布讨论需先绑定并验证手机号 去绑定手机号
加载中…
我
我
回复 @
回复 @
发送
还没有人讨论,来发表第一条吧