简单的模拟就行了,把他们的时间排序,时间最少的先上,然后算出每个人的等待时间的平均值
#include <iostream>
#include <algorithm>
using namespace std;
const int N = 1e3+10;
int n;
double sum;
double ret;
struct node{int num;int t;
}a[N];
bool cmp(const node& x1,const node& x2)
{return x1.t<x2.t;
}
int main()
{cin >> n;for(int i = 1;i<=n;i++){cin >> a[i].t;a[i].num = i;}sort(a+1,a+1+n,cmp);for(int i = 1;i<=n;i++){cout << a[i].num << " ";}for(int i = 2;i<=n;i++){sum+=a[i-1].t;ret+=sum;}ret/=n;cout << endl;printf("%.2lf",ret);}