zoukankan      html  css  js  c++  java
  • USACO1.52 Prime Palindromes

    素数回文

    先产生所有范围内的回文数,再在范围内找出所有 的素数;

    嘿嘿,判断素数的方法就太牛逼了,好难理解

    /*
    ID: nanke691
    LANG: C++
    TASK: pprime
    */
    #include<iostream>
    #include<fstream>
    #include<string.h>
    #include<stdlib.h>
    #include<math.h>
    using namespace std;
    long long b[10000]={5,7,11};
    int p[8]={4,2,4,2,4,6,2,6};
    int prime(int n)//判断素数
    {
        int i=7,j,q;
        if(n==1)return 0;
        if(n==2||n==5||n==3)return 1;
        if(n%2==0||n%3==0||n%5==0)return 0;
        q=(int)sqrt((double)n);
        for(;i<=q;){
            for(j=0;j<8;j++){
                if(n%i==0)return 0;
                i+=p[j];
            }
            if(n%i==0)return 0;
        }
        return 1;
    }
    int creat()
    {
        int i,j,k,l,m,count=3;
        for(i=1;i<=9;i+=2)
            for(j=0;j<=9;j++)
            b[count++]=100*i+10*j+i;
        for(i=1;i<=9;i+=2)
            for(j=0;j<=9;j++)
                for(k=0;k<=9;k++)
                  b[count++]=10000*i+1000*j+k*100+j*10+i;
            for(i=1;i<=9;i+=2)
             for(j=0;j<=9;j++)
                for(k=0;k<=9;k++)
                    for(l=0;l<=9;l++)
                      b[count++]=1000000*i+100000*j+k*10000+l*1000+k*100+j*10+i;
            return count-1;
    }
    int main()
    {
        long long   a,c,i,temp,n;
        n=creat();
    	freopen("pprime.in","r",stdin);
    	freopen("pprime.out","w",stdout);
        scanf("%lld %lld",&a,&c);
         if(a>c)
           {
               temp=a;a=c;c=temp;
           }
         for(i=0;i<n;i++)
            if(a<=b[i])
              {
                  if(c>=b[i])
                   {
                     if(prime(b[i]))
                        printf("%lld\n",b[i]);
                    }
                        else break;
               }
        return 0;
    }
    
  • 相关阅读:
    Merge Two Sorted Lists
    Palindrome Number
    Plus One
    Reverse Integer
    Read N Characters Given Read4
    Given two strings S and T, determine if they are both one edit distance apart
    Longest Palindromic Substring
    Missing Ranges
    Java 不被看好前景堪忧?可能是想多了!
    每天数十亿次请求的应用经验分享,值得参考!
  • 原文地址:https://www.cnblogs.com/nanke/p/2217809.html
Copyright © 2011-2022 走看看