洛谷P1223 排队接水
https://www.luogu.org/problem/P1223
#include<bits/stdc++.h> using namespace std; struct st { int num; int tine; } stu[1001]; bool cmp(st ta,st tb) { return ta.tine<tb.tine; } int main() { int n; cin>>n; double sum=0; for(int i=1; i<=n; i++) { cin>>stu[i].tine; stu[i].num=i; } sort(stu+1,stu+n+1,cmp); for(int i=1; i<=n; i++) { cout<<stu[i].num<<" "; } cout<<endl; for(int i=1; i<=n; i++) { sum+=stu[i].tine*(n-i); //题目问的是平均等待时间,然而我最开始还给每个人加上了他大打水的时间 } printf("%.2lf\n",sum/n); return 0; }