WA求助
查看原帖
WA求助
824865
lraM41楼主2023/2/16 22:06

码风极丑,请不要在意

#include<bits/stdc++.h>
using namespace std;
int b[20],a[35],n,r,i,s,cnt;
bool pd(int n)
{
	if(n<2)return 0;
	for(int i=2;i*i<=n;i++)
		if(n%i==0)return 0;
	return 1;
}
void dfs(int x)
{
	int i;
	if(x>n){
		if(!pd(a[1]+a[n]))return;
		cout<<1;
		for(i=2;i<=n;i++)cout<<' '<<a[i];
		puts("");
		return;
	}
	for(i=2;i<=n;i++)
		if(!b[i]&&pd(i+a[x-1])){
			b[i]=1;
			a[x]=i;
			dfs(x+1);
			b[i]=0;
		}
}
int main()
{
   while(cin>>n&&n!=EOF){
      memset(b,0,sizeof b);
      memset(a,0,sizeof a);
      cout<<"Case "<<++s<<":\n";
      a[1]=b[1]=1;
   	if(n==2){
   	  cout<<"1 2\n";
   	  puts("");
   	  continue;
   	}
      dfs(2);
      puts("");
   }
   //puts("");
   return 0;
}
2023/2/16 22:06
加载中...