• NYOJ 448 素数环


     1 #include<iostream>
     2 #include<memory.h>
     3 using namespace std;
     4 int n,visit[21],cir[21],pri[40];
     5 void dfs(int k, int n)
     6 {
     7     int i;
     8     if(k == n && pri[1 + cir[n-1]] )
     9     {
    10         cout<<1;
    11         for(i = 1; i < n; ++i)
    12             cout<<" "<<cir[i];
    13         cout<<endl;
    14     }
    15     
    16     else
    17     {
    18         for(i = 2; i <= n; ++i)
    19         {
    20             if(pri[i + cir[k-1]] && !visit[i])
    21             {
    22                 visit[i] = 1;
    23                 cir[k] = i;
    24                 dfs(k+1,n);
    25                 visit[i] = 0;
    26             }
    27         }
    28     }    
    29 }
    30 int main()
    31 {
    32     pri[2] = 1; pri[3] = 1; pri[5] = 1; pri[7] = 1; pri[11] =1;pri[13] = 1;
    33     pri[17] = 1; pri[19] = 1; pri[23] = 1; pri[29] = 1;pri[31] = 1; pri[37] = 1;
    34     int i,j,t=0;
    35     while(cin>>n,n)
    36     {
    37         cout<<"Case "<<++t<<":\n";
    38         if(n == 1){
    39             cout<<1<<endl;
    40             continue;
    41         }
    42         if(n & 1){
    43             cout<<"No Answer\n";
    44             continue;
    45         }
    46         memset(visit,0,sizeof(visit));
    47         visit[1] = 1; cir[0] = 1;
    48         dfs(1,n);
    49     }
    50     return 0;
    51 }
  • 相关阅读:
    POJ--3164--Command Network【朱刘算法】最小树形图
    金典 SQL笔记(6)
    hdoj1106排序
    linux程序设计——运行SQL语句(第八章)
    iOS-UITextView-文本输入视图的使用
    HDU 5305 Friends(简单DFS)
    Android IntentService全然解析 当Service遇到Handler
    概要设计的要点
    DispatcherTimer
    原型模式
  • 原文地址:https://www.cnblogs.com/yaling/p/3037749.html
Copyright © 2020-2023  润新知