30,求调
查看原帖
30,求调
544049
Pharaoh_white楼主2024/8/16 10:11

我不会什么高端算法,只会一些基础算法,求调,希望用我能看懂的方法QAQ,学会了就关注。 附上本蒟蒻的垃圾代码:

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int n,js,A=1,B=1,C=1;
	cin>>n;
	int a[10005]={0},b[10005]={0},c[10005]={0};
	for(int i=1;i<=n;i++)
	{
		cin>>js;
		if(js%3==0)
		{
			a[A]=js;
			A++;
		}
		if(js%3==1)
		{
			b[B]=js;
			B++;
		}
		if(js%3==2)
		{
			c[C]=js;
			C++;
		}
	}
	
	if(A<min(B,C))
	{
		cout<<"No"<<endl;
		return 0;
	}
	if(A>max(B,C))
	{
		cout<<"No"<<endl;
		return 0;
	}
	
	if(B==C)
	{
		cout<<"Yes"<<endl;
		for(int i=1;i<=B;i++)
			cout<<b[i]<<" "<<a[i]<<" "<<c[i]<<" ";
	}
	if(B<C)
	{
		cout<<"Yes"<<endl;
		for(int i=1;i<=B;i++)
			cout<<b[i]<<" "<<a[i]<<" "<<c[i]<<" ";
		for(int i=B+1;i<=A;i++)
			cout<<a[i]<<" "<<c[i]<<" ";
		for(int i=A+1;i<=C;i++)
			cout<<c[i]<<" ";
		cout<<endl;
	}
	if(B>C)
	{
		cout<<"Yes"<<endl;
		for(int i=1;i<=C;i++)
			cout<<c[i]<<" "<<a[i]<<" "<<b[i]<<" ";
		for(int i=C+1;i<=A;i++)
			cout<<a[i]<<" "<<b[i]<<" ";
		for(int i=A+1;i<=B;i++)
			cout<<b[i]<<" ";
		cout<<endl;
	}
	return 0;
}

%%%

2024/8/16 10:11
加载中...