- 捕风捉影
- 2016-08-17 12:27:07 @
我为什么超时呢?
include<iostream>
using namespace std;
bool prime(int n)
{
int i;
for(i=2;i<n;i++) if(n%i==0) return false; return true; } int hw(int x) { int r,m=0; while(x>0)
{
r=x%10;
m=m*10+r;
x=x/10;
}
return m;
}
int main()
{
int i,j,k,n,m;
cin>>n>>m;
for(i=n;i<=m;i++)
{
if(prime(i)&&i==hw(i))
cout<<i<<endl;
}
return 0;
}
8 条评论
-
我是百度啦啦啦 LV 8 @ 2016-08-17 14:45:55
对不起,一开始我不知道你用的是c++
-
2016-08-17 14:45:35@
你的程序正确了,恭喜你成为大神级别!!!
-
2016-08-17 14:43:39@
要不然帮不到我,不是大神
-
2016-08-17 14:43:22@
请用c++做
-
2016-08-17 14:42:05@
请用c++做
-
2016-08-17 14:31:38@
哦man
-
2016-08-17 13:21:58@
谁说要打表
#include <bits/stdc++.h> bool check(int x) { int len = 0,b = x,c = x; for (;b;len++) b /= 10; if(!len%2) return false; int a[101]; if (!x%2) return false; memset(a,0,sizeof(a)); for(int i = 1;i <= len;i++) { a[i] = x%10; x /= 10; } for (int i = 1;i <= (len+1)/2;i++) if (a[i] != a[len+1-i]) return false; for (int i = 2;i <= sqrt(c);i++) if(c%i==0) return false; return true; } int main() { int L,R; scanf("%d%d",&L,&R); R = std :: min(R,10000000); for (int i = L;i <= R;i++) if (check(i)) printf("%d\n",i); return 0; }
-
2016-08-17 12:49:21@
// input code here ```打表吧,一个个判断如果数据多肯定是超时的
- 1