91分错第一个点,求助。
查看原帖
91分错第一个点,求助。
754444
tamamocross楼主2022/10/23 21:46

根据本蒟蒻下载的样例来看,问题出在没有按照输入顺序输出相等值,有无大佬帮忙看看。

#include<iostream>
#include<algorithm>
using namespace std;

struct water{
	int v,h;
};
water w[100001];


bool cmp(const water&a,const water&b){
	if(a.v!=b.v){
		return a.v<b.v;
	}
}
int main(){
	int n;
	double sum=0;
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>w[i].v;
		w[i].h=i;
	}
	sort(w+1,w+n+1,cmp);
	for(int i=1;i<=n;i++){
		sum+=(n-i)*w[i].v;
		cout<<w[i].h<<" ";
	}
	cout<<endl;
	printf("%.2f",sum/n);
} 
2022/10/23 21:46
加载中...