来回比较,只有50
查看原帖
来回比较,只有50
1087404
Florr_m27楼主2023/12/15 08:45
#include<bits/stdc++.h>
using namespace std;
int main(){
	long long n,b[114514],t=0,xv=0,wei;
	cin>>n;
	wei=n;
	for(int i=1;i<=n;i++){
		cin>>b[i];
	}
	while(xv==0){
		xv=1;
		for(int i=1;i<n;i++){
			if(b[i]>b[i+1]){
				swap(b[i],b[i+1]);
				xv=0;
			}
		}
	}
	//比较
	while(wei>2){
		int kk=b[1]+b[wei]+b[1]+b[wei-1];
		int ll=b[2]+b[1]+b[2]+b[wei];
		if(kk<=ll){
			t+=kk;
		}
		else{
			t+=ll;
		}
		wei-=2;
	}
	if(wei==2){
		t+=b[2];
	}
	else{
		t+=b[1];
	}
	cout<<t;
	return 0;
}
2023/12/15 08:45
加载中...