题目大意:求出区间[a,b]之间的回文质数。 a<=b<=10^8;

解题过程:

1.先打个素数表,新学了个 欧拉筛法,是对普通筛法的改进。普通筛法是每找到一个素数,就把它的所有倍数标记成1,那么对于一个合数,它会被它的所有质因数标记一次。那么就浪费了时间(复杂度O(NloglogN))。欧拉筛法的复杂度可以降到O(N),

它的优化在于 找到一个质数的时候,把所有是它的质数倍的数标记成1(搜一遍已经找到的质数),如果某一个质数是它的约数,那么break;见代码:

 void generate_prime()
{
int c;
check[]=;
for (int i=;i<=;i++)
{
if (!check[i])
prime[++cnt]=i;
for (int j=;j<=cnt;j++)
{
c=i*prime[j];
if (c>)
break;
check[c]=true;
if (i % prime[j]==)
break;
}
}
}

2.接下来是如何产生回文数,首先0到9必定是,先放到表中。需要分情况考虑:

A.回文数的位数 是偶数。 那么从1到10000枚举回文数的一半,如何产生另一半。

B.回文数的位数 是奇数, 那么先枚举最中间的那个数,然后枚举左边一半,从1到1000;

3.最后写个判断质数的函数,把所有符合要求的放入一个表中,排个序输出即可。

Prime Palindromes的更多相关文章

  1. <Sicily>Prime Palindromes

    一.题目描述 The number 151 is a prime palindrome because it is both a prime number and a palindrome (it i ...

  2. USACO 1.5 Prime Palindromes

    Prime Palindromes The number 151 is a prime palindrome because it is both a prime number and a palin ...

  3. 4190. Prime Palindromes 一亿以内的质数回文数

    Description The number 151 is a prime palindrome because it is both a prime number and a palindrome ...

  4. P1217 [USACO1.5]回文质数 Prime Palindromes(求100000000内的回文素数)

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

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

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

  6. luogu P1217 [USACO1.5]回文质数 Prime Palindromes x

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

  7. USACO Prime Palindromes 构造回文数

    这道题目一点也不卡素数的判断 就是朴素的sqrt(n) 也不卡 所以~放心的用吧. 构造回文的时候看了HINT 其中是这么写的: Generate palindromes by combining d ...

  8. 回文质数 Prime Palindromes

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

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

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

  10. 洛谷 P1217 [USACO1.5]回文质数 Prime Palindromes【取回文数/数论/字符串】

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

随机推荐

  1. thinkphp分页显示

    先在Common\Comon里建一个function.php公共方法,然后在里面新建一个getpage方法,代码如下: <?php /** * TODO 基础分页的相同代码封装,使前台的代码更少 ...

  2. 检测到在集成的托管管道模式下不适用的 ASP.NET 设置。

    <!--解决让程序在集成模块通道下运行--> <system.webServer> <validation validateIntegratedModeConfigura ...

  3. javascript算术运算符详解

    算术运算符 +.-.*./.%.++.-- ++.--分为前缀形式和后缀形式 前缀形式先加减1在执行 后缀形式先执行再加减1 注意 +号用来连接两个字符串 只要+连接的操作数中有一个是字符串型,JS就 ...

  4. #array_parents #parents的区别

    https://www.drupal.org/node/279246 #array_parents  => 一定会反映表单的物理结构 就是该是哪个下面就是哪个下面 不来虚的#parents  = ...

  5. APMServ本地搭建网站最好用的软件

    APMServ 5.2.6 是一款拥有图形界面的快速搭建Apache 2.2.9.PHP 5.2.6.MySQL 5.1.28&4.0.26.Nginx 0.7.19.Memcached 1. ...

  6. js里面获取三位不重复值

    <html><body> <script type="text/javascript"> var d = new Date();var sz = ...

  7. CLGeocoder Error Domain=kCLErrorDomain Code=2

    使用CLGeocoder解码地址时,遇到错误 Error Domain=kCLErrorDomain Code=2 代码: #pragma mark 跟踪定位代理方法,每次位置发生变化即会执行(只要定 ...

  8. struts2 token 使用说明

    使用token标签的时候,Struts2会建立一个GUID(全局唯一的字符串)放在session中,并且会成为一个hidden放在form中. token拦截器会判断客户端form提交的token和s ...

  9. jq--回到顶部

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  10. notepad++之TextFX插件

    一.安装 插件→Plugin Manager→Show Plugin Manager,Availble→选中TextFX→install 二.使用 1.去除重复行 TextFX—>TextFX ...