1 条题解
-
1240803gj徐嘉昊 (2212224徐嘉昊) LV 10 @ 2024-01-06 13:35:46
//过这题不能用筛选法求素数,会爆空间。所以得把所有 //n位的回文数都求出来,再判断是否是素数 #include<bits/stdc++.h> using namespace std; int n,ans,a[100005],t; void selve(int n) { int cl=pow(10,(n+1)/2); for(int i=1;i<=cl;i++) { string s1=to_string(i); string s2=s1; reverse(s2.begin(),s2.end()); int r1=stoi(s1+s2); if(s1.size()+s2.size()==n)a[++t]=r1; s2.erase(0,1); int r2=stoi(s1+s2); if(s1.size()+s2.size()==n)a[++t]=r2; } } bool zs(int x) { if(x<2)return 0; for(int i=2;i*i<=x;i++) if(x%i==0)return 0; return 1; } signed main() { ios::sync_with_stdio(false); cin>>n; selve(n); for(int i=1;i<=t;i++) if(zs(a[i]))ans++; cout<<ans<<endl; return 0; }
- 1
信息
- ID
- 1802
- 难度
- 7
- 分类
- (无)
- 标签
- 递交数
- 106
- 已通过
- 17
- 通过率
- 16%
- 被复制
- 5
- 上传者