zoukankan      html  css  js  c++  java
  • JAVA之大数处理,有简单方法不用是sb

    #include<stdio.h>

    #include<iostream>

    using namespace std;

    #include<stdlib.h>

    int visit[30];//visit为标记数组

    int a[30];

    int n;

    int count;

    /*判断是否为素数*/

    int su(int x)

    {

        int i;

        for(i=2; i*i<=x; i++)

            if(x%i==0)

                return 0;

        return 1;

    }

    //深搜

    void dfs(int x,int y)

    {

        if(y==n+1)

        {

            if(su(x+1)==1)

            {

                count++;

                for(int i=1;i<=n;i++)

                    printf("%d ",a[i]);

                printf(" ");

            }

        }

        for(int i=2; i<=n; i++)

        {

            if(visit[i]==0&&su(x+i)==1) //x与其他没有遍历过的点进行比较判断

            {

                    visit[i]=1;//标记

                    a[y]=i;

                    dfs(i,y+1); //递归

                    visit[i]=0;//恢复现场

            }

        }

    }

    int main()

    {

        while(~scanf("%d",&n))

        {

            count=0;

            a[1]=1;

            visit[1]=1;

            dfs(1,2);

            cout<<count<<endl;

        }

        return 0;

    }

  • 相关阅读:
    A:hover,A:visited 和A:active的区别
    什么是UrlEncode
    ERP系统BOM详细解析(一)
    ERP术语 [转]
    ERP理论的形成
    MRP的計算步驟
    ERP系统模块完全解析──物料编码分章(一)
    Transact SQL 常用语句以及函数
    SQL 2000中的触发器使用
    修改docker0默认IP地址
  • 原文地址:https://www.cnblogs.com/calmwithdream/p/5317230.html
Copyright © 2011-2022 走看看