文章

13

粉丝

76

获赞

11

访问

8.6k

头像
素数 题解:
Kohi VIP
P1375 北京航空航天大学机试题
发布于2024年3月21日 21:32
阅读数 489

  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. const int maxn = 1e4 + 1;
  4. int prime[maxn];
  5. int ans[maxn];
  6. void getPrime(){
  7. memset(prime, 0, sizeof(prime));
  8. for(int i = 2; i <= maxn; i++){
  9. if(0 == prime[i]){
  10. prime[++prime[0]] = i;
  11. }
  12. for(int j = 1; j <= prime[0] && i * prime[j] <= maxn; j++){
  13. prime[i * prime[j]] = 1;
  14. if(0 == i % prime[j]){
  15. break;
  16. }
  17. }
  18. }
  19. return;
  20. }
  21. int main(){
  22. getPrime();
  23. int n;
  24. while(cin>>n){
  25. int pos = 0;
  26. for(int i = 1; i <= prime[0] && prime[i] < n; i++){
  27. if(1 == prime[i] % 10){
  28. ans[pos++] = prime[i];
  29. }
  30. }
  31. if(0 == pos){
  32. cout<<-1<<endl;
  33. continue;
  34. }
  35. else{
  36. cout<<ans[0];
  37. for(int i = 1; i < pos; i++){
  38. ...
登录查看完整内容


登录后发布评论

暂无评论,来抢沙发