• Prime Palindromes


    链接

    分析:暴力枚举1-8位数,并判断是否为素数

     1 /*
     2     PROB:pprime
     3     ID:wanghan
     4     LANG:C++
     5 */
     6 #include "iostream"
     7 #include "cstdio"
     8 #include "cstring"
     9 #include "string"
    10 #include "vector"
    11 #include "algorithm"
    12 using namespace std;
    13 vector<int> h;
    14 int a,b;
    15 bool judge(int x){
    16     if(x<=2)
    17         return false;
    18     for(int i=2;i*i<=x;i++)
    19         if(x%i==0)
    20             return false;
    21     return true;
    22 }
    23 void solve12(){     //1 2
    24     for(int i=0;i<=9;i++){
    25         int num1=i;
    26         int num2=i*10+i;
    27         if(judge(num1))  h.push_back(num1);
    28         if(judge(num2))  h.push_back(num2);
    29     }
    30 }
    31 void solve34(){   //3 4
    32     for(int i=0;i<=9;i++){
    33         for(int j=0;j<=9;j++){
    34             int num3=100*i+10*j+i;
    35             int num4=1000*i+100*j+10*j+i;
    36             if(judge(num3))  h.push_back(num3);
    37             if(judge(num4))  h.push_back(num4);
    38         }
    39     }
    40 }
    41 void solve56(){  //7 8
    42     for(int i=0;i<=9;i++){
    43         for(int j=0;j<=9;j++){
    44             for(int k=0;k<=9;k++){
    45                 int num5=10000*i+1000*j+100*k+10*j+i;
    46                 int num6=100000*i+10000*j+1000*k+100*k+10*j+i;
    47                 if(judge(num5))  h.push_back(num5);
    48                 if(judge(num6))  h.push_back(num6);
    49             }
    50         }
    51     }
    52 }
    53 void solve78(){
    54     for(int i=0;i<=9;i++){
    55         for(int j=0;j<=9;j++){
    56             for(int k=0;k<=9;k++){
    57                 for(int f=0;f<=9;f++){
    58                     int num7=1000000*i+100000*j+10000*k+1000*f+100*k+10*j+i;
    59                     int num8=10000000*i+1000000*j+100000*k+10000*f+1000*f+100*k+10*j+i;
    60                     if(judge(num7))  h.push_back(num7);
    61                     if(judge(num8))  h.push_back(num8);
    62                 }
    63             }
    64         }
    65     }
    66 }
    67 int main()
    68 {
    69     freopen("pprime.in","r",stdin);
    70     freopen("pprime.out","w",stdout);
    71     cin>>a>>b;
    72     solve12(); solve34();solve56();solve78();
    73     sort(h.begin(),h.end());
    74     int len=h.size();
    75     for(int i=0;i<len;i++){
    76         if(h[i]>=a&&h[i]<=b)
    77             cout<<h[i]<<endl;
    78     }
    79     return 0;
    80 }
    View Code
  • 相关阅读:
    linux tar order
    Linux驱动学习步骤(转载)
    汇编指令(转载)
    拓扑排序
    python 三维坐标图
    python 矩阵
    spring 之 IOC 依赖注入详解
    spring 下载
    Struts数据验证
    拦截器配置
  • 原文地址:https://www.cnblogs.com/wolf940509/p/7100296.html
Copyright © 2020-2023  润新知