大佬求救
查看原帖
大佬求救
1612181
szx1018楼主2025/1/25 15:53

结果不输出

#include<bits/stdc++.h>
using namespace std;
long long a[1005];
int main(){
	long long n,s=0,ss=0,d,x,t,nn;
	bool f=0;
	cin>>n;
	nn=n;
	for(long long i=1;i<=n;i++){
		cin>>a[i];
	}
	while(nn){
		d=0;
		x=10000000000000000;
		f=0;
		for(long long i=1;i<=n;i++){
			if(s>=a[i]){
				f=1;
			}
		}
		if(f){
			for(long long i=1;i<=n;i++){
				if(d>=a[i]&&s>=a[i]&&a[i]){
					d=a[i];
					t=i;
				}
			}
			s+=d;
			a[t]=0;
		}else{
			for(long long i=1;i<=n;i++){
				if(x<=a[i]&&s<a[i]&&a[i]){
					x=a[i];
					t=i;
				}
			}
			s+=x;
			a[t]=0;
		}
		nn--;
		if(nn==0){
			break;
		}
		d=0;
		x=10000000000000000;
		f=0;
		for(long long i=1;i<=n;i++){
			if(ss>=a[i]){
				f=1;
			}
		}
		if(f){
			for(long long i=1;i<=n;i++){
				if(d>=a[i]&&ss>=a[i]&&a[i]){
					d=a[i];
					t=i;
				}
			}
			ss+=d;
			a[t]=0;
		}else{
			for(long long i=1;i<=n;i++){
				if(x<=a[i]&&ss<a[i]&&a[i]){
					x=a[i];
					t=i;
				}
			}
			ss+=x;
			a[t]=0;
		}
		nn--;
	}
	cout<<s<<ss;
	return 0;
} 
2025/1/25 15:53
加载中...