九度OJ 1459 Prime ring problem

来源:互联网 发布:mac文本编辑字数统计 编辑:程序博客网 时间:2024/06/16 18:10
#include <stdio.h>int prime[12] = {2,3,5,7,11,13,17,19,23,29,31,37};int ans[18];int cnt;int n;bool visit[18];bool isPrime(int x){for(int i = 0; i < 12; i++)if(x == prime[i])return true;return false;}void DFS(){if(cnt == n){if(isPrime(ans[cnt]+ans[1])){printf("1");for(int j = 2; j <= n; j++){printf(" %d",ans[j]);}printf("\n");}}else{for(int i = 2; i <= n; i++){if(visit[i] == false){if(isPrime(i+ans[cnt])){ans[++cnt] = i;visit[i] = true;DFS();visit[i] = false;cnt--;}}}}}int main(){int cas = 1;while(scanf("%d",&n) != EOF){int i;for(i = 1; i <= n; i++)visit[i] = false;ans[1] = 1;cnt = 1;printf("Case %d:\n",cas);DFS();printf("\n");cas++;}}

0 0
原创粉丝点击