首页 > 代码库 > UVA - 524
UVA - 524
1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 5 using namespace std; 6 7 int visit[20]; 8 9 int isPrime(int n) {10 for (int i = 2;i * i <= n;i++) {11 if (n % i == 0) return 0;12 }13 return 1;14 }15 16 int dfs(int* A,int n,int cur) {17 if (cur == n && isPrime(A[0] + A[cur - 1])) {18 for (int i = 0;i < n - 1;i++) {19 cout << A[i] << " ";20 } 21 cout << A[n - 1] << endl;22 }23 else {24 for (int i = 2;i <= n;i++) {25 if (!visit[i] && isPrime(i + A[cur - 1])) {26 visit[i] = 1;27 A[cur] = i;28 dfs(A,n,cur + 1);29 visit[i] = 0;30 }31 }32 }33 }34 35 int main () {36 int n;37 int pos = 0;38 while (cin >> n) {39 if (pos) cout << endl;40 printf("Case %d:\n",++pos);41 int a[20];42 memset(visit,0,sizeof(visit));43 visit[1] = 1;44 a[0] = 1; 45 dfs(a,n,1);46 }47 }
UVA - 524
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。