c++dfs样例没过,求改
查看原帖
c++dfs样例没过,求改
759152
yinbe楼主2023/7/15 13:18
#include<iostream>
using namespace std;
int a[15],num[15],cnt,n;
char op[15];
void cnt24(int i)
{
	if(i==n+1)
	{
		int ans=0;
		for(int i=1;i<=n;i++)
		{
			ans+=num[i];
		}
		if(ans==0)
		{
			printf("1");
			for(int i=2;i<=n;i++)
			{
				printf("%c%d",op[i],a[i]);
			}
			printf("\n");
			return;
		}
		return;
	}
	op[i]='+';
	num[i]=a[i];
	cnt24(i+1);
	op[i]='-';
	num[i]=-a[i];
	cnt24(i+1);	
	op[i]=' ';
	num[i]=num[i-1]*10+a[i];
	num[i-1]=0;
	cnt24(i+1);
}
int main()
{
	scanf("%d",&n);
	for(int i=1;i<=n;i++)
	{
		a[i]=i;
	}
	num[1]=1;
	cnt24(2);	
	return 0;
}
2023/7/15 13:18
加载中...