看面试经验的时候看见了这个问题,

首先名词解释:

回文数:就是一个数从前看和从后看是一样的,比如121,12321

质数:就是一个只能被1和它自身整除.

回文质数:就是又是回文数又是质数.

好的,概念解释完了,我们就写程序了.

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <math.h>
 4 /**
 5 判断m是否为质数
 6 @return 1:质数,0:不是质数
 7 **/
 8 int ss(int m){
 9     for(int i=2;i<=sqrt(m);i++)
10         if(! (m%i))
11             return 0;
12     return 1;
13 }
14
15 /**
16 判断m是否为回文数
17 @return 1:回文,0:不是回文
18 **/
19 int huiwen(int m){
20     int x=0,y;
21     y=m;
22     while(y){
23         x = x*10 + y % 10;
24         y /= 10;
25     }
26     if (m==x)
27         return 1;
28     else
29         return 0;
30 }
31
32 int main()
33 {
34     /**
35     回文质数的要求:
36     1 位数必须为奇数
37     2 回文数 + 质数
38     3 唯一例外:11
39     **/
40     // 直接打印11
41     printf("回文质数:%d\r\n",11);
42     int j = 1; //基数
43     int k = 3; //边界
44     int l;
45     while (j < k){
46         l = pow(100,j);
47         for (int i=l+1;i < 10 * l;i++,i++)
48             if(huiwen(i)&&ss(i))
49                 printf("回文质数:%d\r\n",i);
50         j++;
51     }
52 }

为什么要奇数位的回文数呢?因为偶数位的回文数注定会被11整除,所以肯定不是质数.

那么我们这里只需要考虑101-999,10001-99999,等等奇数位,所以可以少掉很多循环啦.

转载于:https://www.cnblogs.com/huangjacky/archive/2012/04/20/2460710.html

C - 查找回文质数相关推荐

  1. P1217 回文质数(打表)

    2020.2.9更新,修改打表程序,用上freopen("Table.txt", "w", stdout);程序更加简洁 题目描述 因为151既是一个质数又是一 ...

  2. 洛谷 - P1217 [USACO1.5]回文质数 Prime Palindromes(欧拉线性筛+数论小知识)

    题目链接:点击查看 题目大意:给出一个a和b,求出区间[a,b]中所有回文质数,回文质数指的是一个数既是回文数也是质数 题目分析:首先质数好判断,我们只需要用欧拉筛预处理打好表即可,判断回文数我们也只 ...

  3. 洛谷P1217 回文质数

    题目描述 因为 151 既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151 是回文质数. 写一个程序来找出范围 [a,b] (5 \le a < b \le 100,000 ...

  4. [USACO1.5]回文质数 Prime Palindromes

    题目描述 因为151既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151 是回文质数. 写一个程序来找出范围[a,b](5 <= a < b <= 100,000 ...

  5. 回文质数(洛谷-P1217)

    题目描述 因为151既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151 是回文质数. 写一个程序来找出范围[a,b](5 <= a < b <= 100,000 ...

  6. 暴力枚举——回文质数(洛谷 P1217)

    题目选自洛谷P1217 此题异常的坑,需要很多的处理和简化: 1.回文质数一定不是2的倍数,因为质数不可能是2的倍数: 2.最大的回文质数是9989899(自己测). 于是,本蒟蒻的代码就出来了 题目 ...

  7. java 回文素数_java实现回文质数

    题目描述 因为151既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151 是回文质数. 写一个程序来找出范围[a,b](5 <= a < b <= 100,000 ...

  8. P1217 [USACO1.5]回文质数 Prime Palindromes——回文质数性质、打表

    [USACO1.5]回文质数 Prime Palindromes 题目描述 因为 151151151 既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151151151 是回文质数. ...

  9. P1217 [USACO1.5]回文质数 Prime Palindromes

    暴力输出5~1e8的回文质数 #include <bits/stdc++.h> using namespace std; int cnt; bool isprim(int x) //10^ ...

最新文章

  1. linux shell 脚本 supress,Linux指令和shell脚本
  2. 第18课:模型部署上线的几种服务发布方式
  3. 8086PC读取和执行指令相关部件
  4. phoenix hbase java_java jdbc访问hbase phoenix
  5. 【MySQL 】学习笔记千行总结
  6. 子矩阵(NOIP2014 普及组第四题)
  7. 写给大数据从业者:数据科学的5个陷阱与缺陷
  8. 基于 vue-cli4+vant 搭建 H5 通用架子(支持微信公众号)
  9. 怎样发量暴增_发量少怎么增加发量 秃发女孩必学发量激増6招
  10. C语言课后习题(14)
  11. 5、VS2010+ASP.NET MVC4+EF4+JqueryEasyUI+Oracle该项目的开发——使用datagrid做报表
  12. 代码统计工具SourceCounter(绿色版)
  13. Matlab GUI编程技巧(十二):menu创建菜单或菜单项
  14. springboot基于Java的多元化智能选课系统毕业设计源码040909
  15. pynq 环境搭建_PYNQ 经典项目分享之 - Hello World
  16. python去掉第一个字符_去掉python字符串前面的”b”
  17. html5进行游戏开发
  18. 解决触摸板synatipics与键盘驱动相冲突问题——win8.1
  19. 集成算法终极模型之《神器LightGBM》—最后的高山
  20. 《植物大战僵尸》的12个成功秘诀

热门文章

  1. ES6——Class 的继承 笔记
  2. python调用图灵api_python调用API实现智能回复机器人
  3. ip、子网掩码、默认网关以及传输过程
  4. 为什么现在人有100万,还没有以前手头有10万块钱时敢消费?
  5. 5G手机什么牌子的便宜一点
  6. 房贷断供了,房子就要被收走,首付款怎么办?
  7. 如果第一次见面,投资人就能给创业者提出建设性的意见
  8. 创业计划书写得好不好,能够决定投资人会不会进行投资,那么创业计划书应该怎么写呢?
  9. 一种人是成功为了赚钱,一种人是赚钱为了成功
  10. 老板看似表面风光,可能还没有员工赚得多