2 条题解
-
0
#include<bits/stdc++.h> using namespace std; const int N=1e6+10; int a[N],n; void pd(int x) { if(x<2) return ; int t=sqrt(x+1); for(int i=2;i<=t;i++)if(x%i==0) return ; a[++n]=x; } int main() { n=0; for(int d1=1;d1<=9;d1+=2)pd(d1); for(int d1=1;d1<=9;d1+=2)pd(d1*11); for(int d1=1;d1<=9;d1+=2) for(int d2=0;d2<=9;d2++) pd(d1*101+d2*10); for(int d1=1;d1<=9;d1+=2) for(int d2=0;d2<=9;d2++) pd(d1*1001+d2*110); for(int d1=1;d1<=9;d1+=2) for(int d2=0;d2<=9;d2++) for(int d3=0;d3<=9;d3++) pd(d1*10001+d2*1010+d3*100); for(int d1=1;d1<=9;d1+=2) for(int d2=0;d2<=9;d2++) for(int d3=0;d3<=9;d3++) pd(d1*100001+d2*10010+d3*1100); for(int d1=1;d1<=9;d1+=2) for(int d2=0;d2<=9;d2++) for(int d3=0;d3<=9;d3++) for(int d4=0;d4<=9;d4++) pd(d1*1000001+d2*100010+d3*10100+d4*1000); for(int d1=1;d1<=9;d1+=2) for(int d2=0;d2<=9;d2++) for(int d3=0;d3<=9;d3++) for(int d4=0;d4<=9;d4++) pd(d1*10000001+d2*1000010+d3*100100+d4*11000); int x,y;scanf("%d%d", &x, &y); int l=lower_bound(a+1,a+n+1,x)-a; int r=upper_bound(a+1,a+n+1,y)-a-1; for(int i=l;i<=r;i++) printf("%d\n",a[i]); return 0; } -
0
#include<bits/stdc++.h> using namespace std; const int N=1e6+10; int a[N],n; void pd(int x) { if(x<2) return ; int t=sqrt(x+1); for(int i=2;i<=t;i++)if(x%i==0) return ; a[++n]=x; } int main() { n=0; for(int d1=1;d1<=9;d1+=2)pd(d1); for(int d1=1;d1<=9;d1+=2)pd(d1*11); for(int d1=1;d1<=9;d1+=2) for(int d2=0;d2<=9;d2++) pd(d1*101+d2*10); for(int d1=1;d1<=9;d1+=2) for(int d2=0;d2<=9;d2++) pd(d1*1001+d2*110); for(int d1=1;d1<=9;d1+=2) for(int d2=0;d2<=9;d2++) for(int d3=0;d3<=9;d3++) pd(d1*10001+d2*1010+d3*100); for(int d1=1;d1<=9;d1+=2) for(int d2=0;d2<=9;d2++) for(int d3=0;d3<=9;d3++) pd(d1*100001+d2*10010+d3*1100); for(int d1=1;d1<=9;d1+=2) for(int d2=0;d2<=9;d2++) for(int d3=0;d3<=9;d3++) for(int d4=0;d4<=9;d4++) pd(d1*1000001+d2*100010+d3*10100+d4*1000); for(int d1=1;d1<=9;d1+=2) for(int d2=0;d2<=9;d2++) for(int d3=0;d3<=9;d3++) for(int d4=0;d4<=9;d4++) pd(d1*10000001+d2*1000010+d3*100100+d4*11000); int x,y;scanf("%d%d",&x,&y); int l=lower_bound(a+1,a+n+1,x)-a; int r=upper_bound(a+1,a+n+1,y)-a-1; for(int i=l;i<=r;i++) printf("%d\n",a[i]); return 0; }
- 1
信息
- ID
- 997
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 4
- 标签
- 递交数
- 119
- 已通过
- 54
- 上传者