zoukankan      html  css  js  c++  java
  • Superprime Rib chapter 1.5

      第一次直接过,题目虽然简单,但是还是很高兴。最高位只能是{2,3,5,7},其他位只能是{1,3,7,9}

    /*
    
    ID: hubiao cave
    
    PROG: sprime
    
    LANG: C++
    
    */
    
    
    
    
    #include<iostream>
    
    #include<fstream>
    
    #include<string>
    #include<list>
    
    using namespace std;
    
    
    const int ar[4]={2,3,5,7};
    bool IsPrime(int );
    int count;
    void dfs(int n,int m);
    list<int>li;
    int main()
    
    {
    
        ifstream fin("sprime.in");
        ofstream fout("sprime.out");
    
    
        fin>>count;
    
    
        dfs(1,0);
        for(list<int>::iterator it=li.begin();it!=li.end();it++ )
            fout<<*it<<endl;
    
        return 0;
    
    
    }
    
    void dfs(int n,int m)
    {
        if(count==1)
        {
            for(int i=0;i<4;i++)
                li.push_back(ar[i]);
            return;
        }
    ;    if(n==1)
            for(int i=0;i<4;i++)
               dfs(2,ar[i]);
    
        if(1<n&&n<count)
        {
            for(int i=1;i<=9;i++)
            {
                if(i==5||i%2==0)
                    continue;
                if(IsPrime(m*10+i))
                    dfs(n+1,m*10+i);
                
            }
        }
    
        if(n==count)
        {
        for(int i=1;i<=9;i++)
            {
                if(i==5||i%2==0)
                    continue;
                if(IsPrime(m*10+i))
                    li.push_back(m*10+i);
                
            }
        }
    }
    
    bool IsPrime(int n)
    {
        int i=2;
        for(;i*i<=n;i++)
        {
            if(n%i==0)
                return false;
        }
        return true;
    
    }
  • 相关阅读:
    最终作业
    第十二次作业
    Beta 冲刺(7/7)
    Beta 冲刺(6/7)
    Beta 冲刺(5/7)
    Beta 冲刺(4/7)
    Beta 冲刺(3/7)
    Beta 冲刺(2/7)
    Beta 冲刺(1/7)
    福大软工 · 第十次作业
  • 原文地址:https://www.cnblogs.com/cavehubiao/p/3261815.html
Copyright © 2011-2022 走看看