hdu 1016 dfs+方案输出
2015-02-12 13:21
323 查看
#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #define MAX 27 using namespace std; int n; int a[MAX]; bool used[MAX]; bool p[MAX]; void init ( ) { memset ( p , 0 , sizeof ( p ) ); p[2] = p[3] = p[5] = p[7] = p[11] = p[13] = p[17] = p[19] = p[23] = p[29] = p[31] = p[37] = 1; } void dfs ( int u = 1 , int h = 1 ) { a[h] = u; if ( h== n && !p[a[h]+a[1]] ) return; if ( h == n ) { for ( int i = 1 ; i < n ; i++ ) printf ( "%d " , a[i] ); printf ( "%d\n" , a ); return; } for ( int i = 1 ; i <= n ; i++ ) { if ( used[i] ) continue; if ( !p[i+a[h]] ) continue; used[i] = true; dfs ( i , h+1 ); used[i] = false; } } int main ( ) { init (); int c = 1; while ( ~scanf ( "%d" , &n ) ) { memset ( used , 0 , sizeof ( used ) ); printf ( "Case %d:\n" , c++ ); used[1] = true; dfs ( ); puts (""); } }
相关文章推荐
- hdu 1016 prime ring 简单dfs输出
- HDU 1016 Prime Ring Problem(DFS)
- hdu1016--dfs
- hdu 1016 (DFS)
- uva 624 CD (DP + DFS 输出方案)
- hdu 1016 Prime Ring Problem (dfs)
- HDU 1016 Prime Ring Problem DFS + 记忆化搜索
- HDU 1016 DFS
- hdu 1016dfs
- hdu 1016(一道经典的dfs)
- HDU_1016——素环问题DFS
- hdu 1016 dfs(素数环)
- HDU 1016 不一样的DFS
- HDU 1016 不一样的DFS
- HDU 1016 Prime Ring Problem(DFS)
- Prime Ring Problem hdu 1016 dfs
- hdu 1016 很水的dfs
- HDU 1016(Prime Ring Problem)DFS
- HDU 2177 取(2堆)石子游戏 Wythoff Game+输出方案
- HDU 1016(搜索题,DFS)