题目请点我
题解:
这道题看起来是一道很简单的题目,但是数据量很大。如果暴力判断会超时,预处理筛法标记素数则会超内存。最后看了网上的解法才知道要逆推,生成回文数,这还是要第一次遇到。并且很重要的一点是偶数位的回文数都能被11整除,所以只需要生成奇数位的,偶数位回文素数符合情况的值可能有11一个。挺考验思维的,重要的是do mathmatics first.
代码实现:/*
ID: eashio...
分类:
其他好文 时间:
2015-07-19 16:33:40
阅读次数:
148
2704: 回文素数
/* Copyright (c) 2014, 烟台大学计算机学院
* All rights reserved.
* 文件名称:test.cpp
* 作者:陈丹妮
* 完成日期:2015年 5 月 26 日
* 版 本 号:v1.0
*/
Description
输入一个数n,输出n以内所有的回文素数。回文素数,即既是素数,又是回文数,从前往后、从...
分类:
编程语言 时间:
2015-05-27 10:11:49
阅读次数:
428
题意分析:求1~100000000内的回文素数
题目分析:
1.多组测试数据,所以先打表。打表O(N), N=10^9, 先求质数再判断回文,还是O(N), 效率低下;所以先构造回文数,再判断质数。
2.偶数位的回文数都能被11整除,自己证明去。所以,偶数位的回文数除了11都是合数。
3.一个k位数,可以构造出一个奇数位的回文数。比如13,可以构造131;189可以构造18981.所以10...
分类:
其他好文 时间:
2015-05-12 15:42:08
阅读次数:
730
#include int isPrime(int a){ int i; if(a10&&j=100&&j=1000&&j=10000&&j=100000&&jint isPrime(int a){ int i; if(a<=1) return 0; for(i=2;i*i<=a;i++) { if....
分类:
其他好文 时间:
2015-04-14 21:27:42
阅读次数:
164
#include
#include
int main(int argc, char * argv[]){
int m[16], n, i, t, count = 0;
long unsigned a, k;
for(n=1; n<256; n++)
{
k=0;
t=1;
a=n*n;
for(i=0; a!=0; i++)
{
m[i] = a%10;
...
分类:
其他好文 时间:
2015-04-01 23:52:18
阅读次数:
170
HDU 1431 素数回文(回文素数)
http://acm.hdu.edu.cn/showproblem.php?pid=1431
题意:
给你两个整数a,b。(5 <= a < b <= 100,000,000)要你按顺序输出[a,b]区间内的所有回文素数。
分析:
定理:如果一个数是回文且有偶数位,那么它能被11整除。
根据上面定理我们可知我们只需要找到区间[2,1000W)内的素数即可。(想想为什么)上面b的范围直接缩小了10倍。
剩下的工作就是用...
分类:
其他好文 时间:
2014-11-16 16:02:38
阅读次数:
183
/*
*copyright(c) 2014,烟台大学计算机学院
*All rights reserved。
*文件名称:测试控制符号
*作者:王忠
*完成日期:2014.10.30
*版本号:v1.0
*
*问题描述:输出1000以内既是回文数又是素数的数
*输入描述:
*程序输出:输出1000以内既是回文数又是素数的数
#include
using namespa...
分类:
其他好文 时间:
2014-11-13 16:44:40
阅读次数:
173
总时间限制: 5000ms 内存限制: 65536kB描述一个数如果从左往右读和从右往左读数字是相同的,则称这个数是回文数,如121,1221,15651都是回文数。给定位数n,找出所有既是回文数又是素数的n位十进制数。(注:不考虑超过整型数范围的情况)。输入位数n,其中1#include #inc...
分类:
其他好文 时间:
2014-07-15 22:50:57
阅读次数:
532