题目1459:Prime ring problem(素数环问题——递归算法)
2017-04-23 15:23
429 查看
题目链接:http://ac.jobdu.com/problem.php?pid=1459
详解链接:https://github.com/zpfbuaa/JobduInCPlusPlus
参考代码:
详解链接:https://github.com/zpfbuaa/JobduInCPlusPlus
参考代码:
// // 1459 Prime ring problem.cpp // Jobdu // // Created by PengFei_Zheng on 23/04/2017. // Copyright © 2017 PengFei_Zheng. All rights reserved. // #include <stdio.h> #include <iostream> #include <algorithm> #include <string.h> #include <cmath> #define PRIME 13 #define MAX_SIZE 21 using namespace std; int n; int ans[MAX_SIZE]; bool used[MAX_SIZE]; int prime[]={2,3,5,7,11,13,17,19,23,29,31,37,41}; bool judge(int x){ for(int i = 0 ; i < PRIME ; i++){ if(prime[i]==x) return true; } return false; } void check(){ if(!judge(ans +ans[1])) return; for(int i = 1 ; i <= n ; i++){ if(i!=1) printf(" "); printf("%d",ans[i]); } printf("\n"); } void DFS(int num){ if(num>1){ if(!judge(ans[num] + ans[num - 1])) return; } if(num==n){ check(); return; } for(int i = 2 ; i <= n ; i++){ if(!used[i]){ used[i] = true; ans[num+1] = i; DFS(num+1); used[i] = false; } } } int main(){ int kase = 0; while(scanf("%d",&n)!=EOF){ kase++; memset(used,false,sizeof(used)); ans[1] = 1; used[1]=true; printf("Case %d:\n",kase); DFS(1); printf("\n"); } return 0; } /************************************************************** Problem: 1459 User: zpfbuaa Language: C++ Result: Accepted Time:590 ms Memory:1520 kb ****************************************************************/
相关文章推荐
- 题目1459:Prime ring problem(素数环问题)
- JD 题目1459:Prime ring problem (dfs)
- 递归--【全排列问题】九度1459.Prime ring problem
- hdoj problem 1016 Prime Ring Problem(素数环&&素数问题+DFS(回溯法))
- 题目1459:Prime ring problem
- 题目1459:Prime ring problem
- 【九度】题目1459:Prime ring problem
- 题目1459:Prime ring problem
- 递归与回溯 HDOJ 2553 N皇后问题 1016 Prime Ring Problem
- HDU 1016 Prime Ring Problem(DFS 素数环问题)
- hdu1016 Prime Ring Problem dfs 素数打表
- 九度1459:Prime ring problem
- hdu1016 Prime Ring Problem 素数环
- 杭电ACM OJ 1016 Prime Ring Problem 回溯法+ 高效判断素数 快速轻松解决
- HDU 1016 Prime Ring Problem (素数筛+DFS)
- Prime Ring Problem(素数环问题)
- 九度OJ 1459 Prime ring problem(递归)
- 素数问题(Prime number problem)的求解 ---- C 语言学习
- UVA - 524 Prime Ring Problem (经典回溯问题)
- 杭电OJ(HDOJ)1016题:Prime Ring Problem(DFS问题)