不太对但是过了是怎么回事呢
查看原帖
不太对但是过了是怎么回事呢
1375162
MasterBait楼主2024/10/8 18:14

代码是这样的 问题已标注

#include<bits/stdc++.h>
using namespace std;
struct dy{
	int num;
	double t;
}a[1145];
bool cmp(dy x,dy y){
	return x.t<y.t;
}
int main(){
	int n;
	cin>>n;
	double sum=0;
	for(int i=1;i<=n;i++){
		cin>>a[i].t;
		sum+=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;
		if(i!=n) cout<<" ";
		sum+=a[i].t*(n-i-1);//此处括号中存疑 排到最后一人i=n时岂不是乘以了-1?
	}
	cout<<endl;
	cout<<fixed<<setprecision(2)<<sum/n;
	return 0;
} 

2024/10/8 18:14
加载中...