题意:中文题面,不需要解释了。
思路:按时间从小到大排序即可。
AC代码:
#include<bits/stdc++.h> using namespace std; const int maxn = 1e3+10; struct Node{ int value,index; }node[maxn]; bool cmp(Node a,Node b){ if(a.value==b.value){ return a.index < b.index; } return a.value < b.value; } int main(void){ int n; cin>>n; for(int i = 1; i <= n; i++){ cin>>node[i].value; node[i].index = i; } sort(node+1,node+1+n,cmp); for(int i = 1; i <= n; i++){ cout<<node[i].index<<" "; } cout<<endl; double sum = 0.0; for(int i = 1; i <= n; i++){ for(int j = 1; j <= i-1; j++){ sum += node[j].value; } } printf("%.2lf\n",sum/n); return 0; }