30分求调(已加6,7点特判)
查看原帖
30分求调(已加6,7点特判)
689611
ganyifan楼主2023/10/16 21:31
#include<bits/stdc++.h>
using namespace std;
int n,a[1000005],b[1000005],num;
int main()
{
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
		b[i]=a[i];
		if(a[i]==0) num++;
	}
	if(num==n)
	{
		if(n%2==0)
		{
			for(int i=1;i<=n/2;i++)
		{
			cout<<"1"<<" ";
		}
		    for(int i=1;i<=n/2;i++)
		    {
		    	cout<<"0"<<" ";
			}
			return 0;
		}
		else{
			for(int i=1;i<=n/2+1;i++)
			{
				cout<<"1"<<" ";
			}
			for(int i=1;i<=n/2;i++)
			{
				cout<<"0"<<" ";
			}
			return 0;
		}
	}
	for(int i=1;i<=n;i++)
	{
		int l=i;
		for(int j=1;j<=i;j++)
		{
			a[j]=b[l];
			if(a[j]==0) a[j]=1;
			else a[j]=0;
			l--;
		}
		for(int j=1;j<=i;j++)
		{
			b[j]=a[j];
		}
		/*for(int j=1;j<=i;j++)
		{
			b[j]=a[j];
		}*/
    }
	for(int i=1;i<=n;i++)
	{
		cout<<a[i]<<" ";
	}
	return 0;
}
2023/10/16 21:31
加载中...