社区讨论

平均数为啥一直算不对……

P1223排队接水参与者 3已保存回复 6

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
6 条
当前快照
1 份
快照标识符
@mhj1qouj
此快照首次捕获于
2025/11/03 19:18
4 个月前
此快照最后确认于
2025/11/03 19:18
4 个月前
查看原帖
CPP
#include<iostream>
#include<algorithm>

using namespace std;

struct people
{
	int num;
	int time;
}a[1005];

bool cmp(people a,people b){
	if(a.time!=b.time)
		return a.time<b.time;
	return a.num<b.num;
}

int main()
{
	int n;
	cin>>n;
	
	for(int i=0;i<n;i++)
	{
		a[i].num=i+1;
		cin>>a[i].time;
	}
	
	sort(a,a+n,cmp);
	
	for(int i=0;i<n;i++)
	{
		cout<<a[i].num<<" ";
	}
	cout<<endl;
	
	double sum=0;
	for(int i = 0; i < n; i++)
    {
        sum += (n-i) * a[i].time;
    }
	
	sum=sum/n;
	
	printf("%.2f\n",sum);
}

回复

6 条回复,欢迎继续交流。

正在加载回复...