zoukankan      html  css  js  c++  java
  • hdu 2016 素数环

    素数环, 经典的搜索题。

    学了线段树之后,对递归有了一些体会,写这一题还是可以的。

    ans的地方表示的是,寻找下一个数、

    素数环,
    经典的搜索题。
    学了线段树之后,对递归有了一些体会,写这一题还是可以的。
    ans的地方表示的是,寻找下一个数、
    #include<stdio.h>
    int ss[41],visit[21],b[21];
    void getss()
    {
        int i,j;
        for(i=1;i<=40;i++)
            ss[i]=1;
        ss[1]=0;
        for(i=2;i<=7;i++)
            for(j=i*i;j<=40;j=j+i)
                ss[j]=0;
    }
    void bfs(int ans,int n)
    {
        int i;
        if(ans==n+1&&ss[b[ans-1]+1]==1)
        {
            for(i=1;i<=n;i++)
            {
                if(i==1)printf("%d",b[i]);
                else printf(" %d",b[i]);
            }
            printf("\n");
            return ;
        }
        for(i=2;i<=n;i++)
        {
            if(visit[i]==0)
                if(ss[i+b[ans-1]]==1)
                {
                    visit[i]=1;
                    b[ans]=i;
                    bfs(ans+1,n);
                    visit[i]=0;
                }
        }
    }    
    int main()
    {
        int i,t=0,n;
        getss();
        while(scanf("%d",&n)>0)
        {
            for(i=1;i<=n;i++)
                visit[i]=0;
            visit[1]=1;
            b[1]=1;
            printf("Case %d:\n",++t);
            if(n%2==1) {printf("\n");continue;} //当输入为奇数的数,不要搜了。
            bfs(2,n);
            printf("\n");
        }
        return 0;
    }
  • 相关阅读:
    如何运行vue项目
    java string型时间转long
    龙果学院dubbo
    百度网盘
    百度网盘资源搜索
    charles安装
    charles抓包
    lr报告分析
    一些缩写意思
    带有事务的进入首页、登录、登出脚本
  • 原文地址:https://www.cnblogs.com/tom987690183/p/3074796.html
Copyright © 2011-2022 走看看