为何输出不了
查看原帖
为何输出不了
71925
码凉楼主2020/10/21 20:37

dfs的模板带人,但无法输出

%%%%dalao

#include <iostream>
using namespace std;
int n; 	int ce[17]={0},num[17]={0};
int pd(int a)
{
	int b[100]={2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89};
	for(int i=0;i<=14;i++) if(a==b[i]) return 1;
	else return 0;
}
void sc()
{
	for(int i=1;i<=n;i++) cout<<num[i]<<" ";
	cout<<endl;
}
int dfs(int a)
{
	if(a==n+1&&pd(num[n]+num[1])==1) sc();
	//int ce[17]={0},num[17]={0};
	int i,j;
	for(i=2;i<=n;i++)
	{
		if(ce[n]==0&&pd(n+num[a-1])==1) 
		{
			ce[n]=1;
			num[a]=n;
			dfs(a+1);
			ce[n]=0;
		    num[a]=0;
		}
	}
	return 0;
}
int main()
{
	cin>>n;
	num[1]=1;
	ce[1]=1;
	dfs(2);
	return 0; 
} 
2020/10/21 20:37
加载中...