求助!!!
查看原帖
求助!!!
774677
iakioi114514楼主2023/7/9 16:50
#include<bits/stdc++.h>
using namespace std;
inline int read(){
	char ch=getchar();
	long long s=0,w=1;
	while(ch<'0'||ch>'9'){
		if(ch=='-') w=-1;
		ch=getchar();
	}
	while(ch>='0'&&ch<='9'){
		s=s*((1<<3)+(1<<1))+ch-'0';
		ch=getchar();
	}
	return s*w;
}
inline long long read1(){
	char ch=getchar();
	long long s=0,w=1;
	while(ch<'0'||ch>'9'){
		if(ch=='-') w=-1;
		ch=getchar();
	}
	while(ch>='0'&&ch<='9'){
		s=s*((1<<3)+(1<<1))+ch-'0';
		ch=getchar();
	}
	return s*w;
}
inline unsigned long long read2(){
	char ch=getchar();
	long long s=0,w=1;
	while(ch<'0'||ch>'9'){
		if(ch=='-') w=-1;
		ch=getchar();
	}
	while(ch>='0'&&ch<='9'){
		s=s*((1<<3)+(1<<1))+ch-'0';
		ch=getchar();
	}
	return s*w;
}
long long n,a[1000001],sa=0,sb=0;
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	for(int i=1;i<=n;i++){
		if(i&1){
			long long ans=0;
			for(int j=1;j<=n;j++){
				if(a[j]<=sa){
					if(a[ans]<a[j]) ans=j;
				}
			}
			if(ans==0){
				for(int j=1;j<=n;j++){
					if(a[ans]==0) ans=j;
					else if(a[j]>0&&a[ans]>a[j]) ans=j;
				}
			}
			sa+=a[ans];
			a[ans]=0;
		}
		else{
			int ans=0;
			for(int j=1;j<=n;j++){
				if(a[j]==sb){
					if(a[ans]<a[j]) ans=j;
				}
			}
			if(ans==0){
				for(int j=1;j<=n;j++){
					if(a[ans]==0) ans=j;
					else if(a[j]>=9&&a[ans]>a[j]) ans=j;
				}
			}
			sb+=a[ans];
			a[ans]=0;
		}
	}
	cout<<sa<<" "<<sb<<endl;
	return 0;
}
2023/7/9 16:50
加载中...