所以是哪里出了问题啊!
查看原帖
所以是哪里出了问题啊!
1012783
PumpKin36楼主2023/9/27 22:01
#include <bits/stdc++.h>
using namespace std;
int n;
long long a[1005];
int vis[1005];
long long sum1,sum2;
int main()
{

	int ops=1;
	int pos;
	int i,j;
	cin >> n;
	for(i=1;i<=n;i++)
	{
		cin >> a[i];
	}
	for(i=1;i<=n;i++)
	{
		if(ops==1)
		{
			pos=0;
			for(j=1;j<=n;j++)
			{
				if(vis[j]==1)
				{
					continue;
				}
				if(a[j]>sum1)
				{
					continue;
				}
				if(pos==0 || a[j]<a[pos])
				{
					pos=j;
				}
			} 
			if(pos==0)
			{
				for(j=1;j<=n;j++)
				{
					if(vis[j]==1)
					{
						continue;
					}
					if(pos==0 || a[j]<a[pos])
					{
						pos=j;
					}
				}
			}
			vis[pos]=1;
			sum1+=a[pos];
			ops=0;
		}
		else
		{
			pos=0;
			for(j=1;j<=n;j++)
			{
				if(vis[j]==1)
				{
					continue;
				}
				if(a[j]>sum2)
				{
					continue;
				}
				if(pos==0 || a[j]<a[pos])
				{
					pos=j;
				}
			} 
			if(pos==0)
			{
				for(j=1;j<=n;j++)
				{
					if(vis[j]==1)
					{
						continue;
					}
					if(pos==0 || a[j]<a[pos])
					{
						pos=j;
					}
				}
			}
			vis[pos]=1;
			sum2+=a[pos];
			ops=1;
		}
	}
	cout << sum1 << " " <<sum2 << endl;
	return 0;
}
2023/9/27 22:01
加载中...