• uva 524 prime ring problem——yhx


      Prime Ring Problem 

    A ring is composed of n (even number) circles as shown in diagram. Put natural numbers $1, 2, dots, n$ into each circle separately, and the sum of numbers in two adjacent circles should be a prime.


    Note: the number of first circle should always be 1.

    Input 

    n (0 < n <= 16)

    Output 

    The output format is shown as sample below. Each row represents a series of circle numbers in the ring beginning from 1 clockwisely and anticlockwisely. The order of numbers must satisfy the above requirements.


    You are to write a program that completes above process.

     1 #include<cstdio>
     2 #include<cstring>
     3 bool prm[35],vis[20];
     4 int a[20],n;
     5 bool ck(int x)
     6 {
     7     int i;
     8     for (i=2;i*i<=x;i++)
     9       if (x%i==0) return 0;
    10     return 1;
    11 }
    12 void dfs(int p)
    13 {
    14     int i,j,k,x,y,z;
    15     if (p==n+1)
    16     {
    17         if (prm[a[n]+a[1]])
    18         {
    19             printf("%d",a[1]);
    20             for (i=2;i<=n;i++)
    21               printf(" %d",a[i]);
    22             printf("
    ");
    23         }
    24         return;
    25     }
    26     for (i=2;i<=n;i++)
    27       if (vis[i]==0&&prm[i+a[p-1]])
    28       {
    29           a[p]=i;
    30           vis[i]=1;
    31           dfs(p+1);
    32           vis[i]=0;
    33       }
    34 }
    35 int main()
    36 {
    37     int i,j,k,p,q,x,y,z,t;
    38     bool bbb=0;
    39     for (i=2;i<=35;i++)
    40       prm[i]=ck(i);
    41     a[1]=1;
    42     t=0;
    43     while (scanf("%d",&n)==1)
    44     {
    45         if (bbb) printf("
    ");
    46         bbb=1;
    47         memset(vis,0,sizeof(vis));
    48         vis[1]=1;
    49         printf("Case %d:
    ",++t);
    50         dfs(2);
    51     }
    52 }

    素数环。注意边界。注意每组数据间的回车(虽然题上没说)。

  • 相关阅读:
    2012-2013年度大总结
    [每日一题] 11gOCP 1z0-052 :2013-08-31 数据库的存储结构....................................................A8
    Oracle约束操作
    几道字典树题目
    1032
    uva 10718 Bit Mask(贪心)
    找工作笔试面试那些事儿(2)---内存管理那些事
    汉语-词语:结构
    汉语-词语:形式
    汉语-词语:方向
  • 原文地址:https://www.cnblogs.com/SBSOI/p/5575028.html
Copyright © 2020-2023  润新知