-
你的这一段判断回文真的足够好了。 这是你的修改版本:
#include
#include
#define w 100000
using namespace std;
int main(){
long int i,j,k,n,m,a[w],x,d,b;
char aa[800],c[800];
memset(aa,0,800);
memset(c,0,800);
cin>>m>>n;
x=0;d=0;
for(i=m;i<=n;i++)
k=0;for(j=2;j
#include
using namespace std;
int main(){
long int m, n, i, j;
long int tmp,huiwen;
cin>>m>>n;
if(m < 2)
除了这种特殊情况中的 1 种。
m = 2;
for(i = m; i <= n;i++) 来判断它是否为素数。
for(j = 2; j * j <= i;j++) 只需要判断为 j * j == i。
if(i % j == 0)
非素数,你可以跳到这里。
break;
if( j * j <= i)
它不一定是质数。
continue;
确定文本是否为回文。
tmp = i;
huiwen = 0;
while(tmp > 0)
huiwen = huiwen * 10 + tmp % 10);
tmp /= 10;
if(huiwen == i)
这是回文。 cout<
-
#include ""
#include
#include
#include
#define w 100000
using namespace std;
int isprime(int n)
质数判断功能。
int i,s=(int)(sqrt(n)+1);
if(n%2==0 &&n>2) return 0;
for(i=1;i>m>>n;
x=0;d=0;
for(i=m;i<=n;i++)
计算质数?? 提取到子函数中。
if(isprime(i)){
a[x]=i;
x++;d++;
long int it=0,chan=0;
for(x=0;x>m>>n;
x=0;for(i=m;i<=n;i++) 来计算素数??提取到子函数中。
if(isprime(i)){
a[x]=i;
x++;for(i=0;iif ( ishuiwen(a[i])
cout
-
bool ispal (char c) 确定它是否为回文数。
int l,n;
l = strlen(c);输入数字的长度。
n = l/2;中位数。
coutelse return false;对称位置不相等并退出循环。
return true;
做一个标记。
-
其实也不知道你的**怎么了,就直接换了一个。
#include
#include
int prime(int n) 确定素数 {int m=sqrt(n)+1, i;
for(i=2;i
-
TLE不是你的错,而是算法太复杂,导致超时。
就数据量而言,最后三个测试数据无疑是最大的。
所以你不能用 isprime 来分辨素数。
建议使用素筛算法。
或者你可以制作一个包含所有素数的表,然后只在已知素数的范围内判断素数。 这可以大大加快速度。
-
两个子功能可以做到这一点。
因为确定素数的运算量大于回文数,所以所有两个子函数都是判断它是否是回文,然后判断它是否是素数。
质数,因为它们不是以 1 开头的,所以所有判断 1 的情况都省略了 int sushu(int n)。
回文亚功能。
int hui(int n)
j--;while(iif(a[++i]!=a[--j])
return 0;
return 1;
主要功能。 main()
多次输入并自行转换主功能。
-
在vc++下传递,个位数不是回文数,我从11开始判断,包括
intsushu(int
n)inthuiwen(int
n)void
main()
-
#include ""
bool ishuiwei(int x);
bool isshushu(int x);
void main()}
计算 x 是否为回文数。
bool ishuiwei(int x)
return true;
计算 x 是否为素数。
bool isshushu(int x)
-
错误已被标记并更正。
int main()
else i++;
return 0;
bool isprime(int i)
return true;
bool ishuiwen(int i)return (result == temp);它不能再是 i,你的 i 循环到 0。 }
-
bool isprime(int i)
return true;
void main()
else i++;
在这里添加 count++; 这应该有结果。
-
有无限的回文素数。 如何输出给你。 至少,必须有资格。
先深吸一口气,或者睡到自然醒来,先让自己冷静下来,然后再做自己喜欢的事情,或者自己建个QQ账号骂,骂到开心为止,如果你是上班族或者学生,可以请几天假去做以前想做的事情, 比如旅行、玩电甚至砸电脑等等,你也可以去看笑话,但是如果一想到失恋什么的就不能冷静下来,可以睡一整天,吃很多疯狂的东西,玩一些发泄的游戏, 去骂你最讨厌的人(绝对别傻), 记住不要做傻事,如果真的不行,就跟我一样,多哭,哭到累了再去睡觉,真的不好...... 我无能为力,希望我能帮到你,没有最好的也没关系,开心就好了,亲爱的! (加上一点:。 >>>More
至少在与人交流时,我不会在心里抱怨我是一个不会说标准普通话的人。 也许这个人说错话时没有任何感觉,但说实话,普通话标准的人一听就能听出明显的问题。