空间超限有没有解决的办法啊!!!
查看原帖
空间超限有没有解决的办法啊!!!
947873
RedWen_shuo楼主2023/8/24 09:44

除了MLE之外都是AC就差MLE,不明白为什么超限

#include<bits/stdc++.h>
using namespace std;
const int N=1e4+10;
int n;
char ans[N]="-1";

void zhao(string s)
{
	int a=0,b=0,c=0,d=0;
	for(int i=0;i<=n-2;i++)
	{
		if(s[i]=='1'&&s[i+1]=='0')
			a++;
		else if(s[i]=='0'&&s[i+1]=='1')
			b++;
		else if(s[i]=='1'&&s[i+1]=='1')
			c++;
		else if(s[i]=='0'&&s[i+1]=='0')
		 	d++;
	}
	if(a==b&&b==c&&c==d)
	for(int i=0;i<=n-1;i++)
	{
		ans[i]=s[i];
	}
}

void dfs(int x,string s)
{
	if(x==0){
		zhao(s);
		return;
	}
	dfs(x-1,s+'1');
	dfs(x-1,s+'0');
	
}
int main()
{
	cin>>n;
	dfs(n,"");
	if(n<=2)
		cout<<-1;
	else
		cout<<ans<<"\n";
	return 0;
}
2023/8/24 09:44
加载中...