RE93pts求助
查看原帖
RE93pts求助
713562
hahaxiang楼主2023/5/27 08:39

link

#include<bits/stdc++.h>
using namespace std;
const int N=1e4+100;
int n,a[N];
vector<int>p[3]; 
int main()
{
	ios::sync_with_stdio(0);
	cin.tie(0),cout.tie(0);
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
		p[a[i]%3].push_back(a[i]);
	}
	if(p[0].size()>p[1].size()+p[2].size()+1)
	{
		cout<<"No";
		return 0;
	}
	if(p[1].size()!=0&&p[2].size()!=0&&p[0].size()==0)
	{
		cout<<"No";
		return 0;
	}
	cout<<"Yes"<<'\n';
	for(int i=0;i<p[1].size();i++)
	{
		if(i<p[0].size()-1)
		cout<<p[0][i]<<" ";
		cout<<p[1][i]<<" ";
	}
	if(p[0].size()!=0)
	cout<<p[0][p[0].size()-1]<<" ";
	for(int i=0;i<p[2].size();i++)
	{
		int r=p[1].size()+i;
		cout<<p[2][i]<<" ";
		if(r<p[0].size()-1)
		cout<<p[0][r]<<" ";
	}
	return 0;
}
2023/5/27 08:39
加载中...