HDU-1431-素数回文(暴力打表)
素数回文
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 23082 Accepted Submission(s): 5399
Problem Description
xiaoou33对既是素数又是回文的数特别感兴趣。比如说151既是素数又是个回文。现在xiaoou333想要你帮助他找出某个范围内的素数回文数,请你写个程序找出 a 跟b 之间满足条件的数。(5 <= a < b <= 100,000,000);
Input
这里有许多组数据,每组包括两组数据a跟b。
Output
对每一组数据,按从小到大输出a,b之间所有满足条件的素数回文数(包括a跟b)每组数据之后空一行。
Sample Input
5 500
Sample Output
5 7 11 101 131 151 181 191 313 353 373 383
太暴力了。。。
#include <iostream>
#include <stdio.h>
using namespace std;
int n[800] =
{
5,
7,
11,
101,
131,
151,
181,
191,
313,
353,
373,
383,
727,
757,
787,
797,
919,
929,
10301,
10501,
10601,
11311,
11411,
12421,
12721,
12821,
13331,
13831,
13931,
14341,
14741,
15451,
15551,
16061,
16361,
16561,
16661,
17471,
17971,
18181,
18481,
19391,
19891,
19991,
30103,
30203,
30403,
30703,
30803,
31013,
31513,
32323,
32423,
33533,
34543,
34843,
35053,
35153,
35353,
35753,
36263,
36563,
37273,
37573,
38083,
38183,
38783,
39293,
70207,
70507,
70607,
71317,
71917,
72227,
72727,
73037,
73237,
73637,
74047,
74747,
75557,
76367,
76667,
77377,
77477,
77977,
78487,
78787,
78887,
79397,
79697,
79997,
90709,
91019,
93139,
93239,
93739,
94049,
94349,
94649,
94849,
94949,
95959,
96269,
96469,
96769,
97379,
97579,
97879,
98389,
98689,
1003001,
1008001,
1022201,
1028201,
1035301,
1043401,
1055501,
1062601,
1065601,
1074701,
1082801,
1085801,
1092901,
1093901,
1114111,
1117111,
1120211,
1123211,
1126211,
1129211,
1134311,
1145411,
1150511,
1153511,
1160611,
1163611,
1175711,
1177711,
1178711,
1180811,
1183811,
1186811,
1190911,
1193911,
1196911,
1201021,
1208021,
1212121,
1215121,
1218121,
1221221,
1235321,
1242421,
1243421,
1245421,
1250521,
1253521,
1257521,
1262621,
1268621,
1273721,
1276721,
1278721,
1280821,
1281821,
1286821,
1287821,
1300031,
1303031,
1311131,
1317131,
1327231,
1328231,
1333331,
1335331,
1338331,
1343431,
1360631,
1362631,
1363631,
1371731,
1374731,
1390931,
1407041,
1409041,
1411141,
1412141,
1422241,
1437341,
1444441,
1447441,
1452541,
1456541,
1461641,
1463641,
1464641,
1469641,
1486841,
1489841,
1490941,
1496941,
1508051,
1513151,
1520251,
1532351,
1535351,
1542451,
1548451,
1550551,
1551551,
1556551,
1557551,
1565651,
1572751,
1579751,
1580851,
1583851,
1589851,
1594951,
1597951,
1598951,
1600061,
1609061,
1611161,
1616161,
1628261,
1630361,
1633361,
1640461,
1643461,
1646461,
1654561,
1657561,
1658561,
1660661,
1670761,
1684861,
1685861,
1688861,
1695961,
1703071,
1707071,
1712171,
1714171,
1730371,
1734371,
1737371,
1748471,
1755571,
1761671,
1764671,
1777771,
1793971,
1802081,
1805081,
1820281,
1823281,
1824281,
1826281,
1829281,
1831381,
1832381,
1842481,
1851581,
1853581,
1856581,
1865681,
1876781,
1878781,
1879781,
1880881,
1881881,
1883881,
1884881,
1895981,
1903091,
1908091,
1909091,
1917191,
1924291,
1930391,
1936391,
1941491,
1951591,
1952591,
1957591,
1958591,
1963691,
1968691,
1969691,
1970791,
1976791,
1981891,
1982891,
1984891,
1987891,
1988891,
1993991,
1995991,
1998991,
3001003,
3002003,
3007003,
3016103,
3026203,
3064603,
3065603,
3072703,
3073703,
3075703,
3083803,
3089803,
3091903,
3095903,
3103013,
3106013,
3127213,
3135313,
3140413,
3155513,
3158513,
3160613,
3166613,
3181813,
3187813,
3193913,
3196913,
3198913,
3211123,
3212123,
3218123,
3222223,
3223223,
3228223,
3233323,
3236323,
3241423,
3245423,
3252523,
3256523,
3258523,
3260623,
3267623,
3272723,
3283823,
3285823,
3286823,
3288823,
3291923,
3293923,
3304033,
3305033,
3307033,
3310133,
3315133,
3319133,
3321233,
3329233,
3331333,
3337333,
3343433,
3353533,
3362633,
3364633,
3365633,
3368633,
3380833,
3391933,
3392933,
3400043,
3411143,
3417143,
3424243,
3425243,
3427243,
3439343,
3441443,
3443443,
3444443,
3447443,
3449443,
3452543,
3460643,
3466643,
3470743,
3479743,
3485843,
3487843,
3503053,
3515153,
3517153,
3528253,
3541453,
3553553,
3558553,
3563653,
3569653,
3586853,
3589853,
3590953,
3591953,
3594953,
3601063,
3607063,
3618163,
3621263,
3627263,
3635363,
3643463,
3646463,
3670763,
3673763,
3680863,
3689863,
3698963,
3708073,
3709073,
3716173,
3717173,
3721273,
3722273,
3728273,
3732373,
3743473,
3746473,
3762673,
3763673,
3765673,
3768673,
3769673,
3773773,
3774773,
3781873,
3784873,
3792973,
3793973,
3799973,
3804083,
3806083,
3812183,
3814183,
3826283,
3829283,
3836383,
3842483,
3853583,
3858583,
3863683,
3864683,
3867683,
3869683,
3871783,
3878783,
3893983,
3899983,
3913193,
3916193,
3918193,
3924293,
3927293,
3931393,
3938393,
3942493,
3946493,
3948493,
3964693,
3970793,
3983893,
3991993,
3994993,
3997993,
3998993,
7014107,
7035307,
7036307,
7041407,
7046407,
7057507,
7065607,
7069607,
7073707,
7079707,
7082807,
7084807,
7087807,
7093907,
7096907,
7100017,
7114117,
7115117,
7118117,
7129217,
7134317,
7136317,
7141417,
7145417,
7155517,
7156517,
7158517,
7159517,
7177717,
7190917,
7194917,
7215127,
7226227,
7246427,
7249427,
7250527,
7256527,
7257527,
7261627,
7267627,
7276727,
7278727,
7291927,
7300037,
7302037,
7310137,
7314137,
7324237,
7327237,
7347437,
7352537,
7354537,
7362637,
7365637,
7381837,
7388837,
7392937,
7401047,
7403047,
7409047,
7415147,
7434347,
7436347,
7439347,
7452547,
7461647,
7466647,
7472747,
7475747,
7485847,
7486847,
7489847,
7493947,
7507057,
7508057,
7518157,
7519157,
7521257,
7527257,
7540457,
7562657,
7564657,
7576757,
7586857,
7592957,
7594957,
7600067,
7611167,
7619167,
7622267,
7630367,
7632367,
7644467,
7654567,
7662667,
7665667,
7666667,
7668667,
7669667,
7674767,
7681867,
7690967,
7693967,
7696967,
7715177,
7718177,
7722277,
7729277,
7733377,
7742477,
7747477,
7750577,
7758577,
7764677,
7772777,
7774777,
7778777,
7782877,
7783877,
7791977,
7794977,
7807087,
7819187,
7820287,
7821287,
7831387,
7832387,
7838387,
7843487,
7850587,
7856587,
7865687,
7867687,
7868687,
7873787,
7884887,
7891987,
7897987,
7913197,
7916197,
7930397,
7933397,
7935397,
7938397,
7941497,
7943497,
7949497,
7957597,
7958597,
7960697,
7977797,
7984897,
7985897,
7987897,
7996997,
9002009,
9015109,
9024209,
9037309,
9042409,
9043409,
9045409,
9046409,
9049409,
9067609,
9073709,
9076709,
9078709,
9091909,
9095909,
9103019,
9109019,
9110119,
9127219,
9128219,
9136319,
9149419,
9169619,
9173719,
9174719,
9179719,
9185819,
9196919,
9199919,
9200029,
9209029,
9212129,
9217129,
9222229,
9223229,
9230329,
9231329,
9255529,
9269629,
9271729,
9277729,
9280829,
9286829,
9289829,
9318139,
9320239,
9324239,
9329239,
9332339,
9338339,
9351539,
9357539,
9375739,
9384839,
9397939,
9400049,
9414149,
9419149,
9433349,
9439349,
9440449,
9446449,
9451549,
9470749,
9477749,
9492949,
9493949,
9495949,
9504059,
9514159,
9526259,
9529259,
9547459,
9556559,
9558559,
9561659,
9577759,
9583859,
9585859,
9586859,
9601069,
9602069,
9604069,
9610169,
9620269,
9624269,
9626269,
9632369,
9634369,
9645469,
9650569,
9657569,
9670769,
9686869,
9700079,
9709079,
9711179,
9714179,
9724279,
9727279,
9732379,
9733379,
9743479,
9749479,
9752579,
9754579,
9758579,
9762679,
9770779,
9776779,
9779779,
9781879,
9782879,
9787879,
9788879,
9795979,
9801089,
9807089,
9809089,
9817189,
9818189,
9820289,
9822289,
9836389,
9837389,
9845489,
9852589,
9871789,
9888889,
9889889,
9896989,
9902099,
9907099,
9908099,
9916199,
9918199,
9919199,
9921299,
9923299,
9926299,
9927299,
9931399,
9932399,
9935399,
9938399,
9957599,
9965699,
9978799,
9980899,
9981899,
9989899,
};
int main()
{
int a, b;
while( ~scanf("%d %d", &a, &b) )
{
int i;
for( i=0; i<800; i++ )
{
if( n[i] >=a && n[i] <=b )
{
printf("%d\n", n[i]);
}
}
printf("\n");
}
return 0;
}
寻找素数回文的代码:
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <math.h>
using namespace std;
int huwen( int n )
{
int i, j, x = 0;
int a[10];
while( n > 0 )
{
a[x++] = n % 10;
n = n / 10;
}
int flag = 1;
for(i=0, j=x-1; i<=j; i++, j--)
{
if(a[i] != a[j])
flag = 0;
}
return flag;
}
int main()
{
int a, b;
scanf("%d %d", &a, &b);
int i, j;
if(a % 2 == 0) a = a + 1;
for( i=a; i<=b; i+=2 )
{
int flag = 1;
for( j=3; j*j<=i; j+=2 )
{
if(i % j == 0 )
{
flag = 0;
break;
}
}
if( flag && huwen(i))
printf("%d\n", i);
}
return 0;
}
稍微温柔点的AC代码:
因为素数比回文数多的多,可以先判断回文再判断素数
依然是提前打表存一下;
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <math.h>
#define INF 9989899+10
using namespace std;
int huwen( int n )
{
int i, j, x = 0;
int a[10];
while( n > 0 )
{
a[x++] = n % 10;
n = n / 10;
}
int flag = 1;
for(i=0, j=x-1; i<=j; i++, j--)
{
if(a[i] != a[j])
flag = 0;
}
return flag;
}
int n[800];
int main()
{
int a, b;
int x = 0;
int i, j;
for( i=5; i<=INF; i+=2 )
{
if(huwen(i))
{
int flag = 1;
for( j=3; j*j<=i; j+=2 )
{
if(i % j == 0 )
{
flag = 0;
break;
}
}
if( flag )
n[x++] = i;
}
}
while( ~scanf("%d %d", &a, &b) )
{
for( i=0; i<800; i++ )
{
if( n[i] >= a && n[i] <= b )
printf("%d\n", n[i]);
}
printf("\n");
}
return 0;
}
HDU-1431-素数回文(暴力打表)的更多相关文章
- HDU 1431 素数回文 离线打表
题目描述:给定一个区间,将这个区间里所有既是素数又是回文数的数输出来. 题目分析:这题的这个数据范围比较大,达到了10^8级别,而且输入的数据有多组,又因为判断一个数是否是回文数貌似只有暴力判断,时间 ...
- F题 hdu 1431 素数回文
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1431 素数回文 Time Limit: 2000/1000 MS (Java/Others) M ...
- hdu 1431 素数回文(暴力打表,埃托色尼筛法)
这题开始想时,感觉给的范围5 <= a < b <= 100,000,000太大,开数组肯定爆内存,而且100000000也不敢循环,不超时你打我,反正我是不敢循环. 这题肯定得打表 ...
- 题解报告:hdu 1431 素数回文
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1431 Problem Description xiaoou33对既是素数又是回文的数特别感兴趣.比如说 ...
- HDU 1431 素数回文
有人问我这个问题. 个人感觉暴搜会TLE O(n*sqrt(n)).n=100000000:(推断素数用2~sqrt(n)+1 去除) 还是枚举好了. 枚举 1~10000,把他每一位存下来,回文数已 ...
- 素数回文(hdu1431)
素数回文 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- 4N - 素数回文
xiaoou33对既是素数又是回文的数特别感兴趣.比如说151既是素数又是个回文.现在xiaoou333想要你帮助他找出某个范围内的素数回文数,请你写个程序找出 a 跟b 之间满足条件的数.(5 &l ...
- 素数回文(dfs,有bug)
素数回文 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- 12--c完数/最大公约数/最小公倍数/素数/回文数
完数/最大公约数/最小公倍数/素数/回文数 2015-04-08 10:33 296人阅读 评论(0) 收藏 举报 分类: C/C++(60) 哈尔滨工业大学(8) 版权声明:本文为博主原创文章 ...
- HDU 5651 计算回文串个数问题(有重复的全排列、乘法逆元、费马小定理)
原题: http://acm.hdu.edu.cn/showproblem.php?pid=5651 很容易看出来的是,如果一个字符串中,多于一个字母出现奇数次,则该字符串无法形成回文串,因为不能删减 ...
随机推荐
- CImage得到位图的大小
CImage image; image.Load(_T("1.jpg")); //HBITMAP hBitmap=image.Detach(); HGLOBAL m_hMem = ...
- sklearn中的cross_val_score()函数
sklearn.cross_validation.cross_val_score(estimator, X, y=None, scoring=None, cv=None, n_jobs=1, verb ...
- rdlc设置指定列隐藏
此用户帐户对提案名称列不可见
- IDEA MAVEN 1.8无效的源发行版
最近想将自己在IDEA上开发的MAVEN项目切换到JDK1.8版本上,结果IDEA报1.8无效的源发行版.下面说一下自己的解决方案: 1.pom文件 <build> <plugins ...
- git获取网上的项目
这里是从coding.net上下载项目至本地phpstorm并配置好相关环境. 这里url地址正是项目路径.获取的地方是: 下面那个url直接复制粘贴. 自己选择一个目录,然后clone. 下面便是前 ...
- Professional C# 6 and .NET Core 1.0 - Creating Hello, World! with Visual Studio
本文为转载,学习研究 Creating Hello, World! with Visual Studio Chapter 1, “.NET Application Architectures,” ex ...
- vim 的移动
越来也喜欢用linux的vim 来编程了,简单.高效.专业,最近拿着一本<vim的中文使用手册>在慢慢的看,看到现在就没有勇气继续看下去,我想先放一下,运用前面自己学的东西实际的去操作一下 ...
- conda create -n AlphaPose2018 python=2.7
conda create -n AlphaPose2018 python=2.7Solving environment: done ==> WARNING: A newer version of ...
- BeautifulSoup练习
html1="""<!DOCTYPE html><html lang="en" xmlns="http://www.w3. ...
- c# 获取客户端ip、mac、机器名、操作系统、浏览器信息
d using System; using System.Collections.Generic; using System.Linq; using System.Web; using System. ...